从数组中删除项目(如果它们存在于另一个数组中)

2022-08-30 16:03:01

可能的重复:
如果项目存在于“不允许的单词”数组中,则从数组中删除该项目

假设我有以下两个包含整数的PHP数组:

$foo = array(1, 5, 9, 14, 23, 31, 45);
$bar = array(14, 31, 36);

我想删除存在相同值的项目$foo$bar

因此,该过程的结果将创建一个包含以下内容的数组:$filteredFoo

1, 5, 9, 23, 45

在查看了 php.net 的文档后,似乎没有现成的功能来执行此类操作。那么,我唯一的选择是使用 foreach 并循环访问每次迭代时检查值吗?$foo$bar


答案 1

您可以使用 array_diff()

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

$filteredFoo = array_diff($foo, $bar);

答案 2