PHP中的array_udiff_uassoc()函数

array_udiff_uassoc()函数比较用户自定义函数中的数组键和数组值,并返回一个数组。它返回一个数组,其中包含第一个数组的所有其他参数中都不存在的值。

语法

array_udiff_uassoc(arr1, arr2, arr3, … , compare_func1, compare_func2)

参数

  • arr1-要比较的第一个数组。

  • arr2-要比较的第二个数组。

  • arr3-要比较的更多数组。

  • compare_func1-比较函数,用于比较数组键。如果第一个参数被认为分别小于,等于或大于第二个参数,则它必须返回小于,等于或大于零的整数。

  • compare_func2-比较函数,用于比较数组值。如果第一个参数被认为分别小于,等于或大于第二个参数,则它必须返回小于,等于或大于零的整数。

返回

array_udiff_uassoc()函数返回一个数组,该数组包含第一个数组的所有其他参数中不存在的值。

示例

以下是一个例子-

<?php
function compare_func_key($a, $b) {
   if ($a === $b) {
      return 0;
   }
   return ($a > $b)? 1:-1;
}
function compare_func_val($a, $b) {
   if ($a === $b) {
      return 0;
   }
   return ($a > $b)? 1:-1;
}
$arr1 = array("a" => "laptop", "b" => "keyboard", "c" => "mouse");
$arr2 = array("a" => "laptop", "b" => "keyboard", "c" => "headphone");
$res = array_udiff_uassoc($arr1, $arr2, "compare_func_key”, “compare_func_val");
print_r($res);
?>

输出结果

Array (
   [c] => mouse
)