插件窝 干货文章 php怎么求两个数组的差集

php怎么求两个数组的差集

array 数组 差集 diff 257    来源:    2025-03-18

在PHP中,可以使用 array_diff() 函数来求两个数组的差集。array_diff() 函数会返回一个数组,该数组包含了所有在第一个数组中但不在其他数组中的值。

语法

array_diff(array $array1, array $array2, array $... = ?): array

示例

$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];

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

print_r($result);

输出

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

解释

  • $array1 是第一个数组。
  • $array2 是第二个数组。
  • array_diff($array1, $array2) 返回的是在 $array1 中存在但在 $array2 中不存在的元素。

注意事项

  • array_diff() 是区分大小写的。
  • 如果你想比较多个数组的差集,可以传递更多的数组作为参数。

示例:多个数组的差集

$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
$array3 = [5, 6, 7, 8, 9];

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

print_r($result);

输出

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

在这个例子中,array_diff() 返回的是在 $array1 中存在但在 $array2$array3 中都不存在的元素。

总结

array_diff() 是一个非常方便的函数,用于计算数组之间的差集。你可以用它来比较两个或多个数组,并找出它们之间的差异。