在PHP中合并一个数组

时间:2012-06-18 12:19:14

标签: php arrays

  

可能重复:
  PHP merge array(s) and delete double values

我需要合并两个数组。我知道我可以使用array_merge功能。

但是它显示了两个数组中的所有元素。但是我需要用一个值而不是所有的值替换所有相似的值。

例如

$array1 = array("2", "3", "4");
$array2 = array("2", "7", "8");

如果我使用上面的array_merge函数,则输出将为2,3,4,2,7,8,但我希望它为2,3,4,7,8。我的意思是价值二不应该重复。我希望有一个功能来完成我的任务。请指出我

6 个答案:

答案 0 :(得分:8)

首先使用array_merge,然后使用array_unique

答案 1 :(得分:3)

function array_fusion($ArrayOne, $ArrayTwo)
{
    return array_unique(array_merge($ArrayOne, $ArrayTwo));
}

答案 2 :(得分:1)

array_unique ( array_merge($array1,$array2));

答案 3 :(得分:1)

您可以使用以下功能:

$result = array_unique($input);

这将删除$ input数组中的重复值。所以首先应用array_merge,然后应用array_unique函数。

答案 4 :(得分:0)

以现在的方式使用它,但在merts使用http://php.net/manual/en/function.array-unique.php

之后就行了

答案 5 :(得分:0)

万一有人发现这个有用或者只是好奇,你也可以做两个数组翻转。第一次翻转会导致dupes在从值中创建唯一键时丢失。再次翻转将其恢复为有用的东西。 PHP总是有很多方法可以完成任务。

$arrays = array_flip(array_flip(array_merge($array1,$array2)));

当然,array_unique是更优雅和正确的方法。

$arrays = array_unique(array_merge($array1,$array2));