1

In PHP, I have 2 multidimensional arrays. such as:

array 1:

[[1, 2, 3], [1, 2, 3]];

Array 2:

[[4, 5, 6], [7, 8, 9]];

I need to combine these two arrays.

I need the first array's subarray values to be the keys of resulting multidimensional's subarrays and the second array's subarray values to be the values of resulting multidimensional's subarray.

I need the output like this format:

array (
  0 => 
  array (
    1 => 4,
    2 => 5,
    3 => 6,
  ),
  1 => 
  array (
    1 => 7,
    2 => 8,
    3 => 9,
  ),
)
4

2 回答 2

4

尝试:

$length = sizeof($arrayA);
$output = array();

for ( $i = 0; $i < $length; ++$i ) {
  $output[] = array_combine($arrayA[$i], $arrayB[$i]);
}
于 2012-01-24T08:24:10.073 回答
0

这可以通过调用array_combine()同时迭代(映射)具有等长子数组的两个等长数组来简洁地完成。

代码:(演示

$arr1 = [[1, 2, 3], [1, 2, 3]];
$arr2 = [[4, 5, 6], [7, 8, 9]];
var_export(
    array_map('array_combine', $arr1, $arr2)
);

输出:

array (
  0 => 
  array (
    1 => 4,
    2 => 5,
    3 => 6,
  ),
  1 => 
  array (
    1 => 7,
    2 => 8,
    3 => 9,
  ),
)
于 2021-02-22T07:42:54.417 回答