wordpress直接使用PHP读取数据库里数据

wordpress直接使用PHP读取数据库里数据,这种用法可以实现很多wordpress现成标签不能实现的效果。

1

一、获取单一数据,在一般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时

}

实际应用

<?php $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”>
<?php
foreach($vars as $var) {?>

<li>用户<span><?php echo $var[“email”];?></span>购买 <?php echo $var[“mobanurl”];?></li>

<?php } ?>

</ul>

这样就可以使用PHP代码直接从数据库里获取自己想要的数据了。

四:通过$wpdb给字段添加/修改新值并规定where条件

$wpdb->update($wpdb->prefix . ‘liuyans’, array(‘hfcontent’ => $_POST[‘hfcon’]), array(‘tid’ => $_POST[‘hftijiaoid’]));

代码解释:

array(‘tid’ => $_POST[‘hftijiaoid’]));就是where条件

免责声明:网所有文字、图片、视频、音频等资料均来自互联网,不代表本站赞同其观点,内容仅提供用户参考,若因此产生任何纠纷,本站概不负责,如有侵权联系本站删除!邮箱:207985384@qq.com https://www.ainiseo.com/jianzhan/60613.html

(0)
上一篇 2025年11月20日 下午6:06
下一篇 2025年11月20日 下午6:07

相关文章推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

aisoboke
QQ 微信 Telegram
分享本页
返回顶部