php,如何将包含stdClass对象的数组转换为逗号分隔的列表

php,如何将包含stdClass对象的数组转换为逗号分隔的列表,php,arrays,stdclass,Php,Arrays,Stdclass,当我打印\r$输出时,我得到以下结果 Array ( [0] => stdClass Object ( [id] => foo ) [1] => stdClass Object ( [id] => bar ) [2] => stdClass Object ( [id] => foobar )) 我试图做一些我认为很简单的事情,把$output转换成 foo, bar, foobar 我已经尝试使用下面的语句 foreach($array as $row)

当我打印\r$输出时,我得到以下结果

Array ( [0] => stdClass Object ( [id] => foo ) [1] => stdClass Object ( [id] => bar ) [2] => stdClass Object ( [id] => foobar ))
我试图做一些我认为很简单的事情,把$output转换成

foo, bar, foobar 
我已经尝试使用下面的语句

foreach($array as $row){
   $new_array[$row['nid']] = $row['nid'];
}
print_r($new_array);
但我只是得到了无效的php

我试过使用arraywalk和其他例子,但没有任何效果

那么,如何将以下数组转换为简单的ID列表呢?
感谢您的帮助

除了逗号分隔列表之外,您所拥有的理论上应该是可行的,但是代码与您的数组根本不匹配。您声明
$object
不是
$array
,属性是
id
不是
nid

但是,只需提取
id
列并内爆即可。如果您有PHP7:

$list = implode(', ', array_column($output, 'id'));
对于旧版本:

$list = implode(', ', array_map(function($v) { return $v->id; }, $output));