可能重复:
How to “flatten” a multi-dimensional array to simple one in PHP?
如何使用数组函数创建内部数组值数组?
这是数组
Array
(
[0] => Array
(
[Detail] => Array
(
[detail_id] => 1
)
)
[1] => Array
(
[Detail] => Array
(
[detail_id] => 4
)
)
)
我想创建一个包含上述数组detail_id
的数组,即
array(1, 4)
在PHP中是否完成了任何数组函数?
答案 0 :(得分:1)
没有任何一项功能可以单手操作。 array_map
是你得到的最接近的,但它并没有真正处理额外的递归级别。你为什么不只使用循环?
$new_array = array();
foreach($main_array as $key => $second_array)
{
foreach($second_array as $second_key => $third_array)
{
$new_array[] = $third_array['detail_id'];
}
}
echo implode(',',$new_array);
答案 1 :(得分:0)
如果您正在寻找一个班轮:
$val = array(
array('Detail' => array('detail_id' => 1)),
array('Detail' => array('detail_id' => 4)),
);
var_dump($val);
答案 2 :(得分:0)
我正在寻找这样的答案
$result = array_map( function($a) {
return $a['Detail']['detail_id']; }, $mainArray
);
这是正确的..