php,如何将包含stdClass对象的数组转换为逗号分隔的列表
当我打印\r$输出时,我得到以下结果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)
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));