PHP array_intersect_ukey() 函数用法及示例

PHP Array 函数手册

PHP array_intersect_ukey() 函数用回调函数比较键名来计算数组的交集

语法

array_intersect_ukey ( $array1, $array2 [, $array3..., callback $key_compare_func] );

定义和用法

array_intersect_ukey() 函数用于比较两个(或更多个)数组的键名 ,并返回交集。
注释:该函数使用用户自定义函数比较键名!
该函数比较两个(或更多个)数组的键名,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名。

参数

序号参数及说明
1

array1(必填)

第一个数组是其他数组将与之比较的数组。

2

array2(必填)

这是一个要与第一个数组进行比较的数组

3

array3(选填)

这是一个要与第一个数组进行比较的数组

4

key_compare_func(必填)

用户定义的回调函数。

返回值

它返回一个包含array1的所有值的数组,这些值具有在所有参数中都存在的匹配键。如果有任何错误,它将返回FALSE。

在线示例

<?php
   function key_compare_func($k1, $k2) {
      if ($k1 == $k2)
         return 0;
      
      else if ($k1 > $k2)
         return 1;
      
      else
         return -1;
   }
	
   $input1 = array('blue'=>1, 'red'=>2, 'green'=>3, 'purple'=>4);
   $input2 = array('green'=>5, 'blue'=>6, 'pink'=>7, 'black'=>8);
   
   $result = array_intersect_ukey($input1, $input2, "key_compare_func");
   var_dump($result);
?>
测试看看‹/›

输出结果:

array(2) {
  ["blue"]=>
  int(1)
  ["green"]=>
  int(3)
}

PHP Array 函数手册