`
muyu
  • 浏览: 218305 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

wordpress 数据库类详解

    博客分类:
  • php
阅读更多

WordPress development techniques #1 – Running custom queries using the ‘wpdb’ class 》一文详细介绍了wordpress数据库类与数据表设计。博主也是wordpress Download Monitor 插件的作者!

 

平时开发借助于各种PHP框架,用得多了,一旦自己做项目、自己写代码,就容易忽略一些东西------框架替我们做的越多,我们就越退化,写出的代码质量就差很多了。

 

我特别引用一下wordpress关于insert操作的实现:

 

写道
Keeping data safe for insertion

When inserting data into the database, it shoukd always be escaped to stop people hacking your site, wpdb offers a handy little function for doing this – $wpdb->escape

$safe_string = $wpdb->escape($unsafe_string);

The above code runs the escape function on an unsafe string, and puts the result into the $safe_string varible. This can then be inserted into the database using wpdb safely.

 

下面代码摘自wordpress代码文件wp-includes/wp-db.php

	/**
	 * Escapes content for insertion into the database using addslashes(), for security.
	 *
	 * Works on arrays.
	 *
	 * @since 0.71
	 * @param string|array $data to escape
	 * @return string|array escaped as query safe string
	 */
	function escape( $data ) {
		if ( is_array( $data ) ) {
			foreach ( (array) $data as $k => $v ) {
				if ( is_array( $v ) )
					$data[$k] = $this->escape( $v );
				else
					$data[$k] = $this->_weak_escape( $v );
			}
		} else {
			$data = $this->_weak_escape( $data );
		}

		return $data;
	}

	/**
	 * Weak escape, using addslashes()
	 *
	 * @see addslashes()
	 * @since 2.8.0
	 * @access private
	 *
	 * @param string $string
	 * @return string
	 */
	function _weak_escape( $string ) {
		return addslashes( $string );
	}
0
0
分享到:
评论

相关推荐

    WordPress数据库操作函数详解_.docx

    WordPress数据库操作函数详解_.docx

    wordpress数据库优化的方法(详解版)

    这篇wordpress优化数据库的方法(详解版)添加了很多的说明,目的是让不清楚wordpress数据库的童鞋可以了解下理论知识。理论应用于实际么。如果只想看操作的本站总结了wordpress数据库优化的方法(简洁操作版) 在...

    wordpress数据库优化的方法(简洁操作版)

    这篇wordpress数据库优化的方法(简洁操作版),没什么理论的说明,如果想更具体wordpress数据库优化的操作的意义请查看:wordpress优化数据库的方法(详解版) 在wordpress允许一段时间后,总会产生各种各样的垃圾数据...

    Linux Docker安装wordpress的方法详解教程

    安装mysql服务 下载mysql镜像: docker pull mysql ...docker pull daocloud.io/daocloud/dao-wordpress:latest 拉取镜像前请先登录: docker login daocloud.io(请使用用户名进行 login)。 或者使用wo

    WordPress配置文件wp-config.php详解

    WordPress链接数据库需设定以下四个值: 复制代码代码如下:define(‘DB_NAME’, ‘database-name’);define(‘DB_USER’, ‘database-username’);define(‘DB_PASSWORD’, ‘database-password’);define(‘DB_HOST...

    PHP转换IP地址到真实地址的方法详解

    想要把IPv4地址转为真实的地址,肯定要参考IP数据库,商业的IP数据库存储在关系型数据库中,查询和使用都非常方便,但是成本不是个人和小公 司愿意承受的,所以简单应用的思路就是利用一些免费的IP数据库或者一些大...

    详解mysql索引总结—-mysql索引类型以及创建

    还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTREE索引。  一个简单的对比测试 以我去年测试的数据作为一个简单示例,20多条数据源随机生成200万条...

    高级java工程师笔试题-All-Language-Interview-Question-:所有编程语言面试问答详解

    所有编程语言面试问答详解 作者 拉玛尼·希特什 iOS 开发者 Gmail:- 精彩访谈 请阅读 或 如果您想贡献。 目录 编程语言/框架/平台 安卓 AngularJS 角 主干JS C++ C C# 。网 Clojure CSS Cucumber 姜戈 码头工人 ...

    详解轻巧AMH虚拟主机面板安装使用和GCE云空间搭建网站实例

    本篇文章就来为大家带来利用AMH虚拟主机面板在VPS主机上搭建网站、绑定域名、创建和管理MysqL数据库,如果你喜欢AMH这种功能不多但足够简洁的风格,可以用AMH建立Wordpress博客、Discuz! 论坛社区。 由于前些天部落...

    nginx+rsync+inotify实现负载均衡配置方法

    后端nginx:ip 192.168.6.36,192.168.6.205都部署wordpress,并使用相同的数据库 1、在后端的两个wordpress上配置rsync+inotify,两服务器都开启rsync服务,并且通过inotify分别向对方同步数据 下面配置192.168.6....

Global site tag (gtag.js) - Google Analytics