GROUP_CONCAT查询中的var_dump无法正常工作

I'm trying to print a value from a group_concat query, but for some reason, the code keeps failing. If I print the array that contains my value, I am able to see that everything is being fetched correctly. But when I try to access the first element in the array, my page gives me a white screen. Why is this happening?

$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>

The following is the result for my var_dump($r)

enter image description here but when I try to do a var_dump($r[0]), my page gives me a white screen.

Similarly, when I try to access the field through var_dump($r['GROUP_CONCAT(FieldValue)']) I still get a white screen. How do can we access the field?

You need to give the field an alias -

$db->setQuery("SELECT GROUP_CONCAT( FieldValue ) AS whatever

and then

echo var_dump($r->whatever);

I am not sure why you're using $result = $db->loadObjectList(); though. You could use any of the array methods and it would be better/easier for what you're trying to do. Then you would say:

echo var_dump($r['whatever']);

First, your result type is an Object - not an Array.

So, you should access it using ->propertyName and not ['propertyName'].

The Array way is working, but you should reserve that for arrays - so you can clearly idenify - without looking at the object type - if you are currently using an array or object.

Second, it seems like your Access attempt is missing the whitespaces arround FieldValue. However, it would make sence to give your concatenation an alias, which you can access without having special characters in it.

$db =& JFactory::getDBO();
 $db->setQuery("SELECT GROUP_CONCAT( FieldValue ) AS myColumn
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->myColumn);
}