WORDPRESS如何使用数据库操作对象$wdcp用法详解

虽然wordpress已经尽可能提供了很多的函数供开发者使用,但是在做一个独特功能开发的时候,仍然需要开发者自行操作数据库;这里就可以使用wordpress的$wpdb全局变量。

1. prepare 防止sql注入

$metakey = 'Funny Phrases';
$metavalue = "WordPress' database interface is like Sunday Morning: Easy.";
$wpdb->query(
    $wpdb->prepare("
        INSERT INTO $wpdb->postmeta
        ( post_id, meta_key, meta_value )
        VALUES ( %d, %s, %s )
    ",
    10, 
    $metakey, 
    $metavalue
    )
)

 

2 .获取一个变量的结果

// $wpdb->get_var( 'query', column_offset, row_offset );

$user_count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->users" );
echo "<p>User count is {$user_count}</p>";

3. 获得一行的结果

//  $wpdb->get_row('query', output_type, row_offset); 
	
$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10" )

4. 获取一列的结果

// get_col( 'query', column_offset );

5. 获取正常的结果,可循环输出多个结果

// get_results( 'query', output_type );

6. 插入数据

// insert( $table, $data, $format );
$wpdb->insert( 
    'table', 
    array( 
        'column1' => 'value1', 
        'column2' => 123, 
    ), 
    array( 
        '%s', 
        '%d', 
    ) 
);

7. 替换数据, $data 中第一个是 row id

// replace( $table, $data, $format );
$wpdb->replace( 
    'table', 
    array( 
        'indexed_id' => 1,
        'column1' => 'value1', 
        'column2' => 123, 
    ), 
    array( 
                '%d',
        '%s', 
        '%d', 
    ) 
);

8. 更新数据

// update( $table, $data, $where, $format = null, $where_format = null );

$wpdb->update( 
    'table', 
    array( 
        'column1' => 'value1',   // string
        'column2' => 'value2'    // integer (number) 
    ), 
    array( 'ID' => 1 ), 
    array( 
        '%s',   // value1
        '%d'    // value2
    ), 
    array( '%d' ) 
);

9. 删除数据

// delete( $table, $where, $where_format = null );

10 . query 执行原生sql

$wpdb->query( 
    $wpdb->prepare( 
        "   DELETE FROM $wpdb->postmeta
            WHERE post_id = %d
            AND meta_key = %s
        ",
            13, 'gargle'
        )
);

11. 错误的显示、隐藏和打印

// $wpdb->show_errors();
// $wpdb->show_errors();
// $wpdb->print_error();
本文由:小天丶 发布于 小菜的IT网,转载请注明出处:https://www.xiaocaiit.cn/522.html

相关推荐

评论此文章

已有0人参与了评论