我有以下几点:
$query = \'SELECT * FROM wp_pod_tbl_add_questions WHERE id LIKE \'. $id;
$row = $wpdb -> get_results($query);
如何从$行获取名为“id”和“name”的列?我有以下几点:
$query = \'SELECT * FROM wp_pod_tbl_add_questions WHERE id LIKE \'. $id;
$row = $wpdb -> get_results($query);
如何从$行获取名为“id”和“name”的列?foreach( $wpdb->get_results("SELECT * FROM your_table_name WHERE id LIKE\' . $id . \';") as $key => $row) {
// each column in your row will be accessible like this
$my_column = $row->column_name;}
More info here
To use as an associative array:
$obj=[];
$rows = $wpdb->get_results( \'SELECT * FROM `tbl_name` WHERE `id` = \'.$obj_id , ARRAY_A);
foreach($rows as $row){ $obj=$row; break; }
// $obj is now the selected row if a match was found
使用情况$something = $obj[\'column_name\'];
foreach($obj as $col => $val)
echo $col . \': \' . $val . PHP_EOL . \'<br />\';
要获取其他格式,只需更改ARRAY_A
基于documentation for $wpdb->get_results()
. 皮平的回答适用于大多数对象使用。To use one row as an numerically indexed array
$rows = $wpdb->get_results( \'SELECT * FROM `tbl_name` WHERE `id` = \'.$obj_id , ARRAY_N);
foreach($rows as $row){ $obj=$row; break; }
//Usage
foreach($obj as $col_value) echo $col_value . \' \';
To use one row in an array whose keys are the primary key from your database(通常是id
列)。可能比关联数组方法更有效。$rows = $wpdb->get_results( \'SELECT * FROM `tbl_name` WHERE `id` = \'.$obj_id , OBJECT_K);
$obj = $rows[ $obj_id ];
//Usage
$something = $obj->column_name;
//Remember you can loop over objects too
foreach($obj as $col => $val)
echo $col . \': \' . $val . PHP_EOL;
此代码非常适合我:
global $wpdb;
$table_name = "my_table_name";
$myrows = $wpdb->get_results( "SELECT `id`, `name` FROM ".$table_name);
foreach ($myrows as $details) {
echo $details->id;
echo $details->name;}
始终尝试WordPress Codex:http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results
基本上给定了默认语法,这里的变量$row是一个包含结果的对象。您也可以指定结果的类型(数字数组、关联数组)。
假设只有一个结果,那么$row->id和$row->name应该为您提供信息。
如果返回多个结果,则需要循环对象中的条目。
如果您只希望返回一行,请尝试使用$wpdb->get\\u rowhttp://codex.wordpress.org/Class_Reference/wpdb#SELECT_a_Row
遇到了一个问题,即我无法使用$wpdb->query(). 生成的查询直接在phpmyadmin中运行良好,因此它只在ezSQL类中运行。也许是故意的?我找到了这个http://wordpress.org/support/topic/wpdb-gtquery-fails-when-multiple-update-statements-are-used 这也说明了它的设计。有人能证实吗?ezSQL文档没有提到任何关于多查询支持的内容。如果您必须主要执行一系列查询(插入/更新/删除),除了使用$wpdb