0

我有以下两个数组。我需要在 PHP 中将它们组合在一起,以便将两个数组中 index[i] 处的值添加到最终数组中的同一索引中。

阵列 1

[0] => '123456'
[1] => '654123'
[2] => '987456'
[3] => '489522'
[4] => '014779'

阵列 2

[0] => 'feature'
[1] => 'promo'
[2] => 'other'
[3] => 'start'
[4] => 'end'

我需要的最终数组

[0] => ['123456', 'feature']
[1] => ['654123', 'promo']
[2] => ['987456', 'other']
[3] => ['489522', 'start']
[4] => ['014779', 'end']
4

4 回答 4

10

到目前为止,最简单的方法是使用array_map

$result = array_map(null, $array1, $array2));

看到它在行动

于 2013-09-06T15:34:07.803 回答
1
foreach ($array1 as $index => $value1) {
    $finalArray[$index] = array($value1, $array2[$index]);
}
于 2013-09-06T15:32:06.373 回答
0

由于两者都有数字键,因此您可以使用 foreach 进行操作:

foreach ($array2 as $key => $value) {
    $finalArray[$value] = $array1[$key];
}

这是一个简单的解决方案,但它应该可以工作。它只是获取第二个数组的每个值并将其放入最终数组中。

或者,如果您还需要最终数组中的数字:

foreach ($array2 as $key => $value) {
    $finalArray[$key] = array($value, $array1[$key]);
}

或者,最简单的方法是只使用 array_merge 函数:

$finalArray = array_merge($array1, $array2);

手册在这里

希望它可以帮助你。

于 2013-09-06T15:30:46.190 回答
0

试试这个片段:)

 $array_combined = array();
 foreach($array1 as $key=>$value)
 {
    $array_combined[$key] = array($array1[$key], $array2[$key]); 
 }
于 2013-09-06T15:32:16.293 回答