array_diff()
- 定义与用法
array_diff() 函数用于比较两个(或更多个)数组的键值,并返回差集。
比较两个(或更多个)数组的键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键值。 - 语法
array_diff(array1,array2,array3...);
array1 必需。与其他数组进行比较的第一个数组。 array2 必需。与第一个数组进行比较的数组。 array3,... 可选。与第一个数组进行比较的其他数组。 - 返回值
返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键值。 - 测试实例及结果
1. 字符串作为数组的key时
(1)两个参数测试
运行结果:Array( [b] => green [c] => blue [d] => yellow)
(2)三个参数测试
运行结果:Array( [b] => green [c] => blue)
2. 数值作为数组的key时
运行结果:Array( [0] => 1 [1] => 34 [4] => 6 [5] => 98)
运行结果:Array( [0] => 1 [1] => 34 [4] => 6 [5] => 98)
这个时候产生的结果不再是数组键连续的数组,是一个键值对对象。此时需要用到另一个PHP函数array_values()
运行结果:Array( [0] => 1 [1] => 34 [2] => 6 [3] => 98)
运行结果:Array( [0] => 1 [1] => 34 [2] => 6 [3] => 98)