array_diff_uassoc
(PHP 5, PHP 7)
array_diff_uassoc - 通过用户提供的回调函数执行附加索引检查来计算数组的差异
描述
array array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func )
比较array1
反对array2
和收益之差。与array_diff()不同,数组键在比较中使用。
与array_diff_assoc()不同,用户提供的回调函数用于索引比较,而不是内部函数。
参数
array1
要比较的数组
array2
一个数组来比较
...
更多的阵列可以进行比较
key_compare_func
如果第一个参数分别小于,等于或大于第二个参数,则比较函数必须返回小于,等于或大于零的整数。请注意,在PHP 7.0.0之前,此整数必须在-2147483648到2147483647之间。
int callback ( mixed $a, mixed $b )
返回值
返回一个数组,其中包含来自array1
其他任何数组中不存在的所有条目的数组。
示例
示例#1 array_diff_uassoc()示例
的“一个” =>“绿色”对存在于两个阵列,因此它不是在从函数的输出。与此不同的是,输出对0 =>“red”在输出中,因为在第二个参数“red”中的键是1。
<?php
function?key_compare_func($a,?$b)
{
????if?($a?===?$b)?{
????????return?0;
????}
????return?($a?>?$b)??1:-1;
}
$array1?=?array("a"?=>?"green",?"b"?=>?"brown",?"c"?=>?"blue",?"red");
$array2?=?array("a"?=>?"green",?"yellow",?"red");
$result?=?array_diff_uassoc($array1,?$array2,?"key_compare_func");
print_r($result);
?>
上面的例子将输出:
Array
(
[b] => brown
[c] => blue
[0] => red
)
2个索引的相等性由用户提供的回调函数检查。
注意
注意:此函数仅检查n维数组的一个维度。当然,你可以通过使用array_diff_uassoc($ array10,$ array20,“key_compare_func”)来检查更深层次的维度。。
另请参阅
- array_diff() - 计算数组的差异
- array_diff_assoc() - 通过附加索引检查计算数组的差异
- array_udiff() - 通过使用回调函数进行数据比较来计算数组的差异
- array_udiff_assoc() - 通过附加索引检查计算数组的差异,通过回调函数比较数据
- array_udiff_uassoc() - 通过附加索引检查计算数组的差异,通过回调函数比较数据和索引
- array_intersect() - 计算数组的交集
- array_intersect_assoc() - 计算具有额外索引检查的数组的交集
- array_uintersect() - 计算数组的交集,通过回调函数比较数据
- array_uintersect_assoc() - 计算具有额外索引检查的数组的交集,通过回调函数比较数据
- array_uintersect_uassoc() - 计算具有附加索引检查的数组交集,通过单独的回调函数比较数据和索引
← array_diff_key
array_diff_ukey →
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com