Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中,如何在一个数组中找到不在另一个数组中的元素?_Php - Fatal编程技术网

在PHP中,如何在一个数组中找到不在另一个数组中的元素?

在PHP中,如何在一个数组中找到不在另一个数组中的元素?,php,Php,是否有一个类似于array_merge的php函数,其作用正好相反?换句话说,我有两个数组。我想从第一个数组中删除第二个数组中存在的任何值。我可以通过循环迭代来实现这一点,但是如果有一个方便的函数可以做同样的事情,那将是首选选项 例如: array1 = [1, 2, 3, 4, 5] array2 = [2, 4, 5] $result = array_unmerge(array1, array2); $result应该是[1,3]您可以使用它来计算两个数组之间的差异: $array1

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

例如:

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

$result = array_unmerge(array1, array2);
$result应该是[1,3]

您可以使用它来计算两个数组之间的差异:

 $array1 = array(1, 2, 3, 4, 5);
 $array2 = array(2, 4, 5);
 $result = array_diff($array1, $array2);
$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
)


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

?+1有关说明、文档链接、代码、输出和演示。完整、条理清晰的答案。很漂亮。这正是我一直在寻找的,我几乎感到羞愧,因为我无法通过搜索找到它。感谢you@JoshuaZollinger:不用担心:)