我有两个相同长度的数组,如下所示:

Array
(
    [0] => a
    [1] => b
    [2] => c
)

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)

我想以这样的方式结束:
Array
(
    [0] => Array
        (
            [0] => a
            [1] => 1
        )
    [1] => Array
        (
            [0] => b
            [1] => 2
        )
    [2] => Array
        (
            [0] => c
            [1] => 3
        )
)
array_combine 会将上述一组值制作成数组键,这是我不想要的——我希望两者都作为数组值结束,将两个数组的每一项组合成一个新数组。

是否有内置函数来执行此操作,还是我必须自己动手?

最佳答案







没有

通过调用 array_map() 并将 null 作为回调参数提供给它,然后为它提供 2 个或更多数组,它将根据需要重构您的数据。

代码:( Demo )

$array1 = ['a', 'b', 'c'];
$array2 = [1, 2, 3];

var_export(array_map(null, $array1, $array2));

输出:
array (
  0 =>
  array (
    0 => 'a',
    1 => 1,
  ),
  1 =>
  array (
    0 => 'b',
    1 => 2,
  ),
  2 =>
  array (
    0 => 'c',
    1 => 3,
  ),
)

关于PHP:将相同长度的数组组合成一个多维数组,其中两者都以值(不是键)的形式结束?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12416715/

10-12 00:35
查看更多