当我print_r $ output我得到以下内容
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
列并进行内爆。如果您有PHP 7:
$list = implode(', ', array_column($output, 'id'));
对于旧版本:
$list = implode(', ', array_map(function($v) { return $v['id']; }, $output));