您的位置:首页 > 其它

array_diff_uassoc和array_udiff_assoc

2018-01-31 14:41 190 查看
array_diff_uassoc 用内置的函数比较值,用用户提供的函数比较键

array_udiff_assoc 用用户提供的函数比较值,用内置的函数比较键

array_diff_uassoc() 函数使用用户自定义的回调函数 (callback) 做索引检查来计算两个或多个数组的差集。返回一个数组,该数组包括了在 array1 中但是不在任何其他参数数组中的值。
注意,与 array_diff() 函数 不同的是,键名也要进行比较。
参数 function 是用户自定义的用来比较两个数组的函数,该函数必须带有两个参数 - 即两个要进行对比的键名。因此与函数 array_diff_assoc() 的行为正好相反,后者是用内部函数进行比较的。
返回的数组中键名保持不变。


function compare_func($a, $b)
 {
 if(abs($a) == abs($b)) return 0; 
 return (abs($a) > abs($b))?1:-1;
}
$test1 = array( 1 => "a", 2 => "b", 3 => "c");
$test2 = array( -1 => "a", -2 => "b", -3 => "c");
print_r(array_diff_uassoc($test1, $test2, "compare_func"));
print_r(array_udiff_assoc($test1, $test2, "compare_func"));

Array()
Array( [1] => a [2] => b [3] => c)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: