给出以下数组
array(
0 => array(
'id' => '54'),
1 => array(
'id' => '11'),
2 => array(
'id' => '2')
);
是否有(最好是内置的)功能可以将其重新排列为
array(
0 => '54',
1 => '11',
2 => '2'
);
PHP中的?
我目前的方法是迭代数组并将其保存到另一个数组,这似乎非常冗余,缓慢且效率低下。
$newArray = array();
foreach ($oldArray as $innerArray {
$newArray[] = $innerArray['id'];
}
答案 0 :(得分:2)
如何使用array_walk
function array_flatten( &$item ){
$item = $item['id'];
}
array_walk( $array, 'array_flatten' );
答案 1 :(得分:0)
这个怎么样?
$arr = array(
0 => array(
'id' => '54'),
1 => array(
'id' => '11'),
2 => array(
'id' => '2')
);
$newArr = call_user_func_array('array_merge_recursive',$arr);
print_r($newArr['id']);