如何合并2个数组到结果是一个数组?

时间:2012-07-14 04:33:28

标签: php

我有一个示例代码

$array1 = ("attr1", "attr2", "attr3");
$array2 = ("val1", "val2", "val3");
array = array_merge($array1, $array2);

当我print_r($array)的结果是

array([0] => val1 [1] => val2 [2] => val3)

如何将此错误修复为结果:

array(['attr1'] => val1 ['attr2'] => val2 ['attr3'] => val3)

5 个答案:

答案 0 :(得分:2)

<?php
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b);

print_r($c);
?>

//输出

Array
(
    [green]  => avocado
    [red]    => apple
    [yellow] => banana
)

答案 1 :(得分:1)

我认为你想要的是array_combine()。使用:

$array1 = ("attr1", "attr2", "attr3");
$array2 = ("val1", "val2", "val3");
$array = array_combine($array1, $array2);

答案 2 :(得分:1)

不确定这只是你的错字,但你需要将合并后的数组放回另一个变量......

$array3=array_merge($array1,$array2);
print_r($array3)

编辑:其他人都是对的,对不起,我没有读好你的问题。你想要array_combine。

答案 3 :(得分:1)

使用array_combine()。
更多信息:http://php.net/manual/en/function.array-combine.php

答案 4 :(得分:0)

$array1 = ("attr1", "attr2", "attr3");
$array2 = ("val1", "val2", "val3");
$array = $array1 + $array2

Easy Peasy