array_diff
(PHP 4 >= 4.0.1, PHP 5, PHP 7)
array_diff — 计算数组的差集
说明
array_diff
( array
$array1
, array $array2
[, array $...
] ) : array
对比 array1
和其他一个或者多个数组,返回在
array1
中但是不在其他 array 里的值。
参数
-
array1
-
要被对比的数组
-
array2
-
和这个数组进行比较
-
...
-
更多相比较的数组
返回值
返回一个数组,该数组包括了所有在
array1
中但是不在任何其它参数数组中的值。注意键名保留不变。
范例
Example #1 array_diff() 例子
<?php
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);
print_r($result);
?>
在 $array1 中多次出现的值一样处理,输出结果为:
Array ( [1] => blue )
注释
Note:
两个单元仅在 (string) $elem1 === (string) $elem2 时被认为是相同的。也就是说,当字符串的表达是一样的时候。
Note:
注意本函数只检查了多维数组中的一维。当然可以用 array_diff($array1[0], $array2[0]); 检查更深的维度。
参见
- array_diff_assoc() - 带索引检查计算数组的差集
- array_intersect() - 计算数组的交集
- array_intersect_assoc() - 带索引检查计算数组的交集