从数组中移除重复项

3

我有两个数组,像这样:

$array1 = array(
'ADAIR',
'ADAM',
'ADAMINA',
'ADDISON',
'ADDY',
'ADELLE',
'ADEN',
'ADOLPH',
'ADRIANNA'
);

$array2 = array(
'ADAIR',
'ADAMINA',
'ADRIANNA'
);

如何创建一个没有重复元素的第三个数组?我们应该从第一个数组中删除第二个数组中的重复元素。


这个问题有点含糊不清。您是否希望ADAIR、ADAMINA和ADRIANNA在第三个数组中? - NullUserException
3个回答

6
使用 Array-diff
$array3=array_diff($array1,$array2);

返回一个数组,其中包含来自array1的所有条目,这些条目在任何其他数组中都不存在。

+1 我认为这就是原帖作者的意思,尽管他可能需要再澄清一下。 - NullUserException

2

@RiaD 我认为这个问题有点含糊不清;它问的是“如何创建一个没有重复项的第三个数组”。那么,这个答案就是完全有效的。 - NullUserException
@RiaD 是的,我仍然不确定他实际想要什么。加粗部分是后来添加的,我回答了最初提出的问题,我想。 - Terrik

0

@grunk 删除了一个完全有效的答案,所以功劳不归于我:

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

codepad.org/NVkuml5g


你会得到一个合并的$array1和$array2版本,这似乎不是OP想要的。 - NullUserException

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接