牛牛在线工具

array_udiff_uassoc()

收录 8868 个 PHP 函数,含用途说明与用法示例。

array_udiff_uassoc()

返回两个或多个数组的差集,这个差集通过回调函数进行比较

array_udiff_uassoc() 函数用于返回两个或多个数组的差集,这个差集通过回调函数进行比较。 用法: array_udiff_uassoc ( array $array1 , array $array2 [, array $... ], callable $value_compare_func , callable $key_compare_func ) : array 参数: $array1:必需,第一个数组。 $array2:必需,要比较的第二个数组。 $...:可选,从第三个数组开始,要比较的其他数组。 $value_compare_func:必需,一个自定义的比较函数用于比较数组的值。 函数原型:int function_name ( mixed $a, mixed $b ) 如果返回值小于 0,则 $a 小于 $b; 如果返回值等于 0,则 $a 等于 $b; 如果返回值大于 0,则 $a 大于 $b。 $key_compare_func:必需,一个自定义的比较函数用于比较数组的键。 函数原型:int function_name ( mixed $a, mixed $b ) 如果返回值小于 0,则 $a 小于 $b; 如果返回值等于 0,则 $a 等于 $b; 如果返回值大于 0,则 $a 大于 $b。 返回值: 一个数组,包含了 $array1 中存在但是其他数组中不存在的值,基于键名和键值的比较。 示例: function cmp($a, $b) { if ($a === $b) { return 0; } return ($a > $b) ? 1 : -1; } $array1 = [ "a" => "red", "b" => "green", "c" => "blue" ]; $array2 = [ "a" => "red", "b" => "blue", "c" => "green" ]; $result = array_udiff_uassoc($array1, $array2, "cmp", "cmp"); print_r($result); 输出: Array ( [b] => green [c] => blue ) 在示例中,通过 array_udiff_uassoc() 函数计算了 $array1 和 $array2 的差集,并使用 cmp() 函数进行值的比较,同时使用 cmp() 函数进行键的比较。最后,输出结果为包含差集的新数组。