php中求数组差/交集的函数总结
求数组差集函数
函数只检查了多维数组中的一维。可以用
array_diff($array1[0], $array2[0])
检查更深的维度。u
:自定义函数比较,a(association)
:同时比较键
和值
。自定义函数callable $value_compare_func必须返回一个小于零,等于零,或大于零的整数。其中返回零代表两个数相等。
对比数组值的函数
array_diff
对比(===)
array1
,array2
···的值(value)
,返回在$array1
中但是不在其他 array 里的值,键名保留不变。
array array_diff ( array $array1 , array $array2 [, array $... ] )
array_udiff
用自定义函数比较
$array1
,$array2
···的值(value)
,函数参数为数组的值
。返回在$array1
,不在其他array的元素,保持键值关联。
array array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func )
int value_compare_func(( mixed $a, mixed $b )) //该比较函数必须相应地返回一个小于,等于或大于 0 的整数。 #返回0,意味着两个数相等,即值在两个数组都出现了,所以等于0不返回值。 #根据value_compare_func($a, $b)的参数顺序返回元素,如:value_compare_func($b, $ba),返回在$b不在$a的元素
对比数组键的函数
array_diff_key
对比(===)
array1
,array2
···的键(key)
,所有出现在$array1
中但是不在其他array中的键(key)
的值。
array array_diff_key ( array $array1 , array $array2 [, array $... ] )
array_diff_ukey
用自定义函数比较
$array1
,$array2
···的键
,函数参数为数组的键
,键不同即返回元素。返回在$array1
,不在其他array的元素,保持键值关联。
array array_diff_ukey ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
同时对比键
和值
array_diff_assoc
比较
$array1
,$array2
···的键(key)
和值(value)
,返回在$array1
,不在其他array的元素,保持键值关联。。
array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )
array_diff_uassoc
用自定义函数比较
$array1
,$array2
···的键(key)
和值(value)
,回调函数参数为数组的键
,键值都相同时不返回元素。返回在$array1
,不在其他array的元素,保持键值关联。
array array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
array_udiff_assoc
用自定义函数比较
$array1
,$array2
···的键(key)
和值(value)
,回调函数参数为数组的值
,键值都相同时不返回元素。返回在$array1
,不在其他array的元素,保持键值关联。
array array_udiff_assoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func )
array_udiff_uassoc
用自定义函数比较
$array1
,$array2
···的键(key)
和值(value)
,两个函数参数分别为数组的键
/值
。返回在$array1
,不在其他array的元素,保持键值关联。
array array_udiff_uassoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func , callable $key_compare_func )
求数组交集函数
交集函数和差集函数的用法大同小异
对比数组值
的函数,不比较键
array_intersect
计算数组的交集
array_uintersect
计算数组的交集,用回调函数比较数据
对比数组键
的函数,不比较值
array_intersect_key
使用键名比较计算数组的交集
array_intersect_ukey
用回调函数比较键名来计算数组的交集
同时对比数组键
和值
的函数
array_intersect_assoc
带索引检查计算数组的交集
array_intersect_uassoc
带索引检查计算数组的交集,用回调函数比较索引
array_uintersect_assoc
带索引检查计算数组的交集,用回调函数比较数组值
array_uintersect_uassoc
带索引检查计算数组的交集,用单独的回调函数比较数据和索引
相关推荐:
以上就是php中求数组差/交集的函数总结的详细内容,更多请关注其它相关文章!