stackoverflow上的第一篇文章。我一直关注这个网站很长一段时间,通常会找到我正在寻找的东西。但这让我很困惑。
让我踏上舞台。我正在开发一个Web驱动程序。我有Wordpress,Divi主题来自Elegant Themes。我正在使用短代码插入模块。我是新手(这说明了一切。)
这是我的问题。我运行了一个返回单行结果的wpdb查询。
$editresult = $wpdb->get_results ("SELECT `serialnumber`, `batttype`, `cells`, `fullvolts` FROM listbattery WHERE serialnumber = '$serialnumber'", ARRAY_A);
当我对此进行讨论时,我得到以下内容。
array(1) {[0]=>array(4) {["serialnumber"]=>string(10)"battery #2" ["batttype"]=>string(5) "NiCad" ["cells"]=>string(1) "8"["fullvolts"]=>string(6)"12.125"}}
所以说,我知道查询工作正常。我知道我收到了这些信息。在我的生活中我无法弄清楚的是,如何将每列的结果转换为单个变量,以便我可以在整个页面中随机插入每个变量。
到目前为止,我尝试过8种不同的方法。我希望你们能帮忙!感谢!!!
答案 0 :(得分:1)
您可以遍历结果:
foreach($editresult as $result) {
$serialnumber = $result['serialnumber'];
$batttype = $result['batttype'];
$cells = $result['cells'];
$fullvolts = $result['fullvolts'];
}
答案 1 :(得分:1)
如果预计只返回一行,您可以执行以下操作
$editresult = $wpdb->get_row("SELECT `serialnumber`, `batttype`, `cells`, `fullvolts` FROM listbattery WHERE serialnumber = '$serialnumber'", ARRAY_A);
然后您可以访问返回的值,如
$editresult['serialnumber']
$editresult['batttype']
$editresult['cells']
$editresult['fullvolts']
或者如果您将ARRAY_A
更改为OBJECT
,您就可以像这样访问这些值
$editresult->serialnumber
$editresult->batttype
$editresult->cells
$editresult->fullvolts
如果你总是期望只获得一行,那么@ nanodanger的回答中没有get_results
和foreach
所示