将多维数组转换为一维数组我已经在这一段时间里敲打了一会儿。我有这个多维数组:Array( [0] => Array ( [0] => foo [1] => bar [2] => hello ) [1] => Array ( [0] => world [1] => love ) [2] => Array ( [0] => stack [1] => overflow [2] => yep [3] => man )我需要得到这个:Array( [0] => foo [1] => bar [2] => hello [3] => world [4] => love [5] => stack [6] => overflow [7] => yep [8] => man)有任何想法吗?我发现的所有其他解决方案都解决了具有不同键的多维数组。我的数组只使用简单的数字键。
3 回答
长风秋雁
TA贡献1757条经验 获得超7个赞
array_reduce($array, 'array_merge', array())
例:
$a = array(array(1, 2, 3), array(4, 5, 6));$result = array_reduce($a, 'array_merge', array());
结果:
array[1, 2, 3, 4, 5, 6];
喵喔喔
TA贡献1735条经验 获得超5个赞
PHP array_merge
Docs函数可以展平您的数组:
$flat = call_user_func_array('array_merge', $array);
如果原始数组的深度高于2个级别,则PHP中的SPL RecursiveArrayIterator
可用于展平它:
$flat = iterator_to_array(new RecursiveIteratorIterator(new RecursiveArrayIterator($array)), 0);
请参阅:如何展平多维数组?。
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
这就是它的全部内容:
foreach($array as $subArray){ foreach($subArray as $val){ $newArray[] = $val; }}
- 3 回答
- 0 关注
- 1052 浏览
添加回答
举报
0/150
提交
取消