10

是否有一个 php 函数,类似于 array_merge,它完全相反?换句话说,我有两个数组。我想从第一个数组中删除第二个数组中存在的任何值。我可以通过循环迭代来做到这一点,但如果有一个方便的函数可以做同样的事情,那将是首选。

例子:

array1 = [1, 2, 3, 4, 5]
array2 = [2, 4, 5]

$result = array_unmerge(array1, array2);

$result 应该出现在 [1, 3]

4

3 回答 3

30

您可以array_diff()用来计算两个数组之间的差异:

$array1 = array(1, 2, 3, 4, 5);
$array2 = array(2, 4, 5);

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

输出:

Array
(
    [0] => 1
    [2] => 3
)

演示!

于 2013-09-12T17:09:26.487 回答
1
 $array1 = array(1, 2, 3, 4, 5);
 $array2 = array(2, 4, 5);
 $result = array_diff($array1, $array2);
于 2013-09-12T17:09:12.957 回答
1

array_diff

Returns an array containing all the entries from array1 that are not present in any of the other arrays.

于 2013-09-12T17:12:57.377 回答