array_uintersect_uassoc() Function
array_uintersect_uassoc()函数是PHP中的一个内建函数,用于计算两个数组的交集。有一个回调函数的作用,它帮助比较和计算索引值,它比较键。它还使用两个用户定义函数比较两个或多个数组中的值,然后返回匹配值。array_uintersect_uassoc()返回一个数组,其中包含出现在所有参数中的第一个数组的所有值。对于比较,第一个函数使用键,第二个函数使用键值。
语法
1 | array array_uintersect_uassoc( $array1, $array2, $array3..., $function_key, $function_value ) |
参数:此函数接受以上所述的多个参数,如下所述:
- array1:这是第一个强制数组,用于与其他数组进行比较。
- array2:这是第二个数组,它是必需的,用于与第一个数组和其他数组进行比较。
- array3和其他数组:它是可选参数。这是用来与其他数组比较的数组。
- function_key:这是必需的参数。比较数组键的是用户定义函数的名称。
- function_value:这是必需的参数。比较数组值的是用户定义函数的名称。
返回值:返回一个数组,数组中包含所有参数中array1的所有值。
下面的程序演示了PHP中的array_uintersect_uassoc()函数:
1 2 3 4 5 6 | <?php $arr1 = array("a" => "green", "b" => "brown", "c" => "blue", "red"); $arr2 = array("a" => "GREEN", "B" => "brown", "yellow", "red"); print_r(array_uintersect_uassoc($arr1, $arr2, "strcasecmp", "strcasecmp")); ?> |
输出
1 2 3 4 5 | Array ( [a] => green [b] => brown ) |
程序2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php function function_key($a, $b) { if ($a == $b) return 0; return ($a > $b) ? 1 : -1; } function function_value($a, $b) { if ($a == $b) return 0; return ($a > $b) ? 1 : -1; } $arr1=array("1"=>"1Geeks","2"=>"1GeeksforGeeks","3"=>"1Geeks1"); $arr2=array("1"=>"1Geeks","2"=>"1GFG","3"=>"1Geeks1"); $res = array_uintersect_uassoc($arr1, $arr2, "function_key", "function_value"); print_r($res); ?> |
输出
1 2 3 4 5 | Array ( [1] => 1Geeks [3] => 1Geeks1 ) |
参考
http://php.net/manual/en/function.array-uintersect-uassoc.php