如何使用PHP从另一个数组中移除数组值问题

4
我希望检查示例1中的任何数组值是否在示例2中,如果是,则从示例2中删除它们。如何使用PHP实现这一功能?

示例1

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

示例 2

Array
(
    [0] => 3
    [1] => 3
    [2] => 4
    [3] => 4
    [4] => 4
    [5] => 3
    [6] => 3
    [7] => 3
    [8] => 4
    [9] => 4
    [10] => 4
    [11] => 3
)
3个回答

9

$example2 = array_diff($example2, $example1)


7

$array = array_diff($array2, $array1);

array_diff 函数计算数组的差集。它返回一个包含第一个数组中所有不在任何其他数组中出现的条目的数组。

该函数接受两个或多个数组作为参数,并返回一个新数组,其中包含仅存在于第一个数组中的值。在上面的示例中,$array2 是第一个数组,$array1 是要从中删除的数组。


0
foreach($example2 as $key => $value) {
   foreach($example1 as $key1 => $value1) {
      if ($value1 == $value) {
         unset($example2[$key])
      }
   }
}

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