wordpress用PHP读取数据库里数据
wordpress用读取数据库里数据,可以实现很多wordpress现成标签不能实现的效果。
一、获取单一数据,在一般sql语句就只返回一个数值时使用。
$var = $wpdb -> get_var(“查询条件”);例如:
$var = $wpdb -> get_var(“SELECT count(*) FROM `user`”);这个函数直接返回行数值,可以直接使用。
注:其实get_var并不是仅仅只能用于就返回一个数值的sql语句,而是他默认只返回第一行特别左边的元素。如果希望他返回其他元素,可以使用get_var(“查询条件”, x, y)来实现。
二、获取一行数据,在一般sql语句就只返回特定对象时使用。
$sql = $wpdb -> get_row(“查询条件”, output_type);例如:
$var = $wpdb -> get_row(“SELECT * FROM `user` WHERE `userid` = 1”, ARRAY_A);只返回一行数据,取第一个满足条件的数据。
output_type:三个预定义的常量之一。默认值为OBJECT。
OBJECT —— 返回的结果以对象形式输出
ARRAY_A ——返回的结果以关联数组形式输出
ARRAY_N —— 返回的结果以数值索引数组形式输出
我通常使用OBJECT或是ARRAY_A,访问方式分别为$var -> username(output_type为OBJECT时)或是$var[“username”](output_type为ARRAY_A时)
注:其实get_row并不是仅仅只能用于就返回一行的sql语句,而是他默认只返回第一行的集合。如果希望他返回其他行,可以使用get_row(“query”, output_type, y)来实现。
三、获取一列数据,在一般sql语句就只返回特定属性时使用。
$sql = $wpdb -> get_col(“查询条件”);例如:
$var = $wpdb -> get_col(“SELECT `meta_value` FROM `wp_postmeta` WHERE `meta_key` = ‘pingji'”);可以得到所有满足条件的多行数据,但只是某一个特定的值。
返回的结果以数值索引数组形式输出,一般通过foreach函数分离,或是直接使用$var[1]这样的方式获取。
注:其实get_col并不是仅仅只能用于就返回一列的sql语句,而是他默认只返回第一列的集合。如果希望他返回其他列,可以使用get_col(“查询条件”, x)来实现。
四、获取多列数据,在一般sql语句就只返回特定属性时使用。
$sql = $wpdb -> get_results(“查询条件”, output_type);例如:
$vars = $wpdb -> get_results(“SELECT * FROM `user`, ARRAY_A);返回的结果以数值索引数组形式包其他形式输出,一般通过foreach函数分离,或是直接使用$var[1]这样的方式获取。获取的对象受第二个参数控制。
output_type:三个预定义的常量之一。默认值为OBJECT。
OBJECT —— 返回的结果以对象形式输出
ARRAY_A ——返回的结果以关联数组形式输出
ARRAY_N —— 返回的结果以数值索引数组形式输出
我通常使用OBJECT或是ARRAY_A,访问方式分别为$var -> username(output_type为OBJECT时)或是$var[“username”](output_type为ARRAY_A时)。
例如:
foreach($vars as $var) {
echo $var[“username”];//output_type是ARRAY_A时
}
实际应用
<? $vars = $wpdb -> get_results(“SELECT * FROM `wp_banquan` WHERE email LIKE ‘%@%’ AND mobanurl LIKE ‘%http%’ AND mobanurl NOT LIKE ‘%undefined%’ order by ID desc limit 0,50″, ARRAY_A);?>
<ul class=”infoList”>
<?
foreach($vars as $var) {?>
<li>用户<span><? echo $var[“email”];?></span>购买 <? echo $var[“mobanurl”];?></li>
<? } ?>
</ul>
这样就可以使用代码直接从数据库里获取自己想要的数据了。
相关推荐
-
帝国CMS数据库数据表详细说明,每个表对应的数据功能
帝国CMS数据库数据表详细说明,每个表对应的数据功能
-
帝国cms统计某一个数据表的文章信息数量的方法
下面是统计nws表的24发布文章收录和一个月的更新数量代码如下:
-
帝国cms重建数据索引表解决Duplicate entry错误
帝国cms在修改和添加任何内容的时候提示Duplicatntry错误,查看indx数据表的记录值与其它的几个表的数量对应有一定的差别。
-
帝国cms循环子栏目数据调用 php的方式
帝国cms循环子栏目数据调用php加灵动标签的方式
-
帝国cms在恢复证数据中报错MySQL server has gone away replace into `sjk_ecms_wz_data_1` value
帝国cms在恢复证数据中报错MySQLsrvrhasgonawayrplacinto`sjk_cms_wz_da_1`valus('100'解决方法:这个代表什么意思呢?翻译成中文的意思是:MySQL服务器...