合并2数组并在密钥存在时添加新项

时间:2012-04-17 12:25:02

标签: php arrays

是否可以合并2个数组而不重叠相同的键?

如果密钥已经存在,我希望它添加一个新项目。

喜欢那个

$a = array(1,2,3,4);
$b = array(3,4,5,6);
merge $a and $b 

期望的结果是

array(1,2,3,4,3,4,5,6) 

4 个答案:

答案 0 :(得分:5)

尝试array_merge

$result = array_merge($a, $b);

答案 1 :(得分:0)

使用array_merge

$a = array(1,2,3,4);
$b = array(3,4,5,6);
$c = array_merge($a,$b);
print_r($c);

Working example here

这是帮助中的关键词:

  

如果输入数组具有相同的字符串键,则后面的值   该密钥将覆盖前一个密钥。但是,如果是数组   包含数字键,后面的值不会覆盖原始值   值,但会附加。

所以只有拥有数字键才能使用

答案 2 :(得分:0)

您可以使用函数array_merge来实现此目的。但我想指出数组的内容是数组的值而不是键。在PHP 中,您不能拥有重复的密钥

答案 3 :(得分:0)

尝试

<?php
$merged_array = array_merge($a, $b);
?>

还存在函数array_merge_recursive。