我有一个多维数组,如下所示
Array
(
[0] => Array
(
[0] => manoj
[1] => karthi
)
[1] => Array
(
[0] => kumar
)
)
我想像这样合并两个数组
Array
(
[0] => manoj
[1] => karthi
[2] => kumar
)
答案 0 :(得分:1)
$return = [];
$array = [
0 => [
'manoj',
'karthi',
],
1 => [
'kumar',
]
];
array_walk_recursive($array, function ($value, $key) use (&$return) {
$return[] = $value;
});
var_dump($return);
输出
array (size=3)
0 => string 'manoj' (length=5)
1 => string 'karthi' (length=6)
2 => string 'kumar' (length=5)
这适用于任何深度的数组。它不会保留键。这么小心。
这也需要annonymous functions,因此需要PHP> = 5.3.0。
答案 1 :(得分:0)
你可以使用它,直接来自Illuminate's Collection helpers:
function flatten($array, $depth = INF)
{
return array_reduce($array, function ($result, $item) use ($depth) {
if (! is_array($item)) {
return array_merge($result, [$item]);
} elseif ($depth === 1) {
return array_merge($result, array_values($item));
} else {
return array_merge($result, flatten($item, $depth - 1));
}
}, []);
}