http://faq.comsenz.com/library/plug/construct/construct_db.htm
有文档,只是你没找到...
有文档,只是你没找到...
解决方案 »
- PHp怎么获取网络传过来的xml文件
- 简单的PHP函数问题
- 【远程下载】打开远程主机出错!内容为非文本类型或网址重定向! php_network_getaddresses: getaddrinfo failed: 不知道
- PHP一键发布信息
- 求PHP缩小GIF动态图片分辨率的类
- 编辑器和视频播放代码
- 关于一个页面两个提交按钮
- 启动Apache HTTP Server 2.2.6提示cannot load php4apache2.dll into server
- httpd域名绑定问题
- 这种PHP代码是哪种加密方式?
- discuz如何处理这种情况呢,关于数据表数据提取
- discuz如何转成APP呢
%t
DB::table()
%d
intval()
%s
addslashes()
%n
in IN (1,2,3)
%f
sprintf('%f', $var)
%i
直接使用不进行处理这些都表示啥意思呢
比如这句话
DB::query("SHOW FIELDS FROM ".DB::table($r_table), 'SILENT'))
其中的$r_table和SILENT代表啥,当然$r_table是一个数据表名,但是从字段上看它是一个变量.怎么理解它呢
还比如这句话
$query = DB::query('SELECT clid FROM %t WHERE rid=%d AND fid=%d', array($this->_table, $rid, $fid));
这里的array代表什么呢,里面的参数又是啥意思呢
%d:数值占位符,DB::fetch_first("SELECT * FROM %t WHERE uid=%d",array('common_member',1));会自动执行intval
%s:字符占位符,DB::fetch_first("SELECT * FROM %t WHERE username=%s",array('common_member','管理员'));会自动执行addslashes,转义特殊字符
%n:DB::fetch_all("SELECT * FROM %t WHERE uid IN(%n)",array('common_member',array(1,2,3)));
%f:同%d类似,只是浮点数,很少用
%i:原样输出,DB::fetch_first("SELECT * FROM %t WHERE username='%i'",array('common_member','管理员'));
后面的数组就是方法fetch_first的参数,array里面的值和前面sql语句中的%t,%d..之类的占位符是一一对应的
如:DB::fetch_first("SELECT * FROM %t WHERE uid=%d",array('common_member',1));
%t=pre_common_member(会默认执行DB::table加上表前缀)
%d=1(会默认执行intval)