array_diff()
函数来返回两个数组的差集。这个函数接受两个数组作为参数,并返回一个包含第一个数组中所有不在第二个数组中的元素的新数组。,语法:,参数:,array1
:要从中删除元素的数组。array2
:要删除的元素所在的数组。,返回值:,一个包含array1
中所有不在array2
中的元素的新数组。,示例:,在上面的示例中,array_diff()
函数返回了一个包含array1
中的元素1、3和5的新数组,因为这些元素不在array2
中。,自定义比较函数:,我们可以使用array_udiff()
函数来自定义比较函数,以确定哪些元素应该从第一个数组中删除。,语法:,参数:,array1
:要从中删除元素的数组。array2
:要删除的元素所在的数组。callback
:一个用户自定义的比较函数,它接受两个元素作为参数,并返回-1(如果第一个元素应该被删除)、0(如果两个元素相等)或1(如果第二个元素应该被删除)。,示例:,在上面的示例中,我们使用array_udiff()
函数来比较数组中对象的name
属性。它返回了一个包含array1
中所有name
属性与array2
中不同对象的的新数组。,注意:,array_diff()
和array_udiff()
函数只会比较数组中相同索引的元素。如果两个数组有不同的键,则这些键将被忽略,并且只有具有相同键的元素才会被比较。
我们可以使用
array_keys()
或array_values()
函数来获取数组所有键或值的列表,以便我们可以根据不同的标准比较数组。,