我正在尝试打印 group_concat 查询中的值,但由于某种原因,代码始终失败。如果我打印包含我的值的数组,我可以看到所有内容都已正确获取。但是当我尝试访问数组中的第一个元素时,我的页面给我一个白屏。为什么会发生这种情况?
$db =& JFactory::getDBO();
$db->setQuery("SELECT GROUP_CONCAT( FieldValue )
FROM tpro_rsform_submission_values
WHERE FieldName
IN (
'LAST NAME', 'FIRST NAME'
)
GROUP BY SubmissionId");
$result = $db->loadObjectList();
foreach ($result as $r) {
echo var_dump($r);
}
// </code>
以下是我的 var_dump($r) 的结果
但是当我尝试执行 var_dump($r[0]) 时,我的页面出现白屏。
同样,当我尝试通过 var_dump($r['GROUP_CONCAT(FieldValue)']) 访问该字段时,我仍然看到白屏。我们如何访问该字段?
最佳答案
您需要为该字段指定一个别名 -
$db->setQuery("SELECT GROUP_CONCAT( FieldValue ) AS whatever
然后
echo var_dump($r->whatever);
我不确定您为什么使用 $result = $db->loadObjectList();
。您可以使用任何数组方法,这对于您想要做的事情来说会更好/更容易。然后你会说:
echo var_dump($r['whatever']);
关于php - GROUP_CONCAT 查询上的 var_dump 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26660002/