首页 > 解决方案 > 将关联数组的数组减少为关联数组

问题描述

有没有一种惯用的方式(一些现有的功能)来减少

[[0 => 'zero'], [1 => 'one']]

[0 => 'zero', 1 => 'one']

?

很容易只创建一个循环来完成这项工作,但它似乎效率低下,我显然更喜欢这里的单线。

编辑:哦,这里 0 和 1 相互跟随只是随机的。数组也可以是[[2 => 'two'], [3 => 'three']]

标签: phparrays

解决方案


您可以array_merge...splat 运算符一起使用

$a = [[0 => 'zero'], [1 => 'one']];
print_r(array_merge(...$a));

解决方案二:保留密钥

$a = [[1 => 'one'], [0 => 'zero']];
$r = [];
array_walk($a, function($v, $k) use (&$r){ $r += $v;});
print_r($r);

工作演示:https ://3v4l.org/9sRaE


推荐阅读