25、wordpress高级教程:wp_db
wp_db这个类主要是用来操作数据库
方法所在文件:wp-includes/wp-db.php

请不要直接调用wpdb类中的方法。WordPress定义了$wpdb的全局变量,所以请直接调用该全局变量$wpdb的实例来操作数据库。(调用之前不要忘了声明引用全局变量$wpdb。参考globalize)

声明$wpdb:<?php global $wpdb ?>

$wpdb对象可以用来操作WordPress数据库中的每一个表,不仅仅是WordPress自动创建的基本表。例如,你有一个自定义的表叫做mytable,那么可以使用如下语句来查询:

$myrows = $wpdb->get_results( “SELECT id, name FROM mytable” );

$wpdb对象可以读取多个表,但是其只针对WordPress的数据库。如果你需要连接其他数据库,那么你应该使用你自己的数据库连接信息,并调用wpdb类来创建一个你自己的数据库操作实例。如果你有多个数据库需要连接,那么你可以考虑使用hyperdb来替代$wpdb。

  1. 学会使用insert()方法向数据库中添加数据。
    1.1 insert($table,$data,$format);向数据库中插入一条数据。
    第一个参数:表的名称。
    第二个参数:插入的数据。
    第三个参数:插入的数据的格式。
    参考例子:
    <?php $wpdb->insert('table',array('column1' => 'value1','column2' => 123),array('%s','%d')) ?>
1.2 学会使用insert_id获取自动增长ID。
    `$wpdb->insert_id`获取自动增长的ID。
    可以通过`echo`显示到前端页面。
1.3 学会使用prefix。
    `$wpdb->prefix;`这个就是数据表的前缀,默认的前缀为`wp_`。
    可以通过`echo`显示到前端页面。
    每一个wordpress系统的数据表前缀都有可能不同,所以可以通过这个方法来获取不同的前缀。
  1. 学会使用update()方法更新数据库中的数据。
    更新ID为1的行,第一列的值为字符串,第二列的值为数组:
$wpdb->update( 'table', array( 'column1' => 'value1', 'column2' => 'value2' ), array( 'ID' => 1 ), array( '%s', '%d' ), array( '%d' ) )
  1. 学会使用get_var()获取数据库中的数据
<?php $wpdb->get_var('query',column_offset,row_offset); ?>
    第一个参数:查询语句。
    第二个参数:列的偏移量。
    第三个参数:行的偏移量。
<?php $xm = $wpdb->get_var("select 'xm' from  $wpdb->prefix.'xs'where 'id' = 1"); ?>
这是查询的id为1的哪一行,列名为xm的数据
<?php $xm = $wpdb->get_var("select * from  $wpdb->prefix.'xs'where 'id' = 1"); ?>
这是默认的返回的是这一行的第一列的数据,可以通过列的偏移量来控制显示哪一列的数据。直接在参数位置填写0-++。

扩展方法:返回上一条sql语句影响的行数。

<?php 
    $row_count = $wpdb->get_var('select row_count()');
    echo $row_count;
?>
  1. 学会使用query()方法删除数据库中的数据
<?php $wpdb->query('query'); ?>
    参数即为sql的查询语句。
  1. 学会使用get_results()获取数据库中的数据
<?php $wpdb->get_results('query',output_type); ?>
    第一个参数:查询的语句。
    第二个参数:返回数据类型。ARRAY_A为数组的方式返回,默认返回时类。
  1. 学会使用get_row()获取数据库中的数据(获取一行)
<?php $wpdb->row('query',output_type,row_offset); ?>
  1. 显示和隐藏sql错误信息。
    You can turn error echoing on and off with the show_errors and hide_errors, respectively.

需要在执行之前就声明这个方法,最好在声明$wpdb后就声明。

 <?php $wpdb->show_errors(); ?> 
 <?php $wpdb->hide_errors(); ?> 

如果在之前没有声明$wpdb->show_errors();也可以通过声明$wpdb->last_error;来显示最后的sql语句错误。

You can also print the error (if any) generated by the most recent query with print_error.

    <?php $wpdb->print_error(); ?> 
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇