-
04月03日
-
【函数功能】
该函数通过自定义函数比较两个(或更多个)数组的键名和键值,并返回交集。
【函数语法】
array_uintersect_uassoc (array $array1, array $array2, array $_ = null, $value_compare_func, $key_compare_func)
【参数说明】
参数 描述 $array1 必需。与其他数组进行比较的第一个数组。 $array2 必需。与第一个数组进行比较的数组。 $array3,... 可选。与第一个数组进行比较的其他数组。 $value_compare_func 必需。用于比较数组键名的用户自定义函数的名称。
定义可调用的比较函数。如果第一个参数小于等于或大于第二个参数,则比较函数必须返回小于等于或大于 0 的整数。
$key_compare_func 必需。用于比较数组键值的用户自定义函数的名称。
定义可调用的比较函数。如果第一个参数小于等于或大于第二个参数,则比较函数必须返回小于等于或大于 0 的整数。
【演示程序】
<?php /** * array_uintersect_uassoc (array $array1, array $array2, array $_ = null, $value_compare_func, $key_compare_func) * **/ function value_compare_func($a,$b){ if ($a===$b) { return 0; } return ($a>$b)?-1:1; } function key_compare_func($a,$b){ if ($a===$b) { return 0; } return ($a>$b)?-1:1; } $array = array('site_name'=>'PHP1234','site_url'=>'php1234.cn','site_auth'=>'明礼馨德'); $array1 = array('ext'=>'明礼馨德','site_url'=>'php1234.cn','site_name'=>'PHP1234'); $array2 = array('PHP1234','site_url'=>'php1234.cn','明礼馨德'); $result=array_uintersect_uassoc($array,$array1,$array2,"value_compare_func","key_compare_func"); print_r($result); ?>
【输出结果】
Array ( [site_url] => php1234.cn )
【特别注意】
1.可用一个或任意多个数组与第一个数组进行比较。 2.该函数将键和值都用于比较,只有所有数组中都出现的键值对才会被保留。 3.PHP 版本:5.0+。
【原版定义】
/** * Computes the intersection of arrays with additional index check, compares data and indexes by a callback functions * @link http://www.php.net/manual/en/function.array-uintersect-uassoc.php * @param array1 array <p> * The first array. * </p> * @param array2 array <p> * The second array. * </p> * @param _ array[optional] * @param value_compare_func callable <p> * The comparison function must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second. * </p> * &callback.cmp; * @param key_compare_func callable <p> * Key comparison callback function. * </p> * @return array an array containing all the values of * array1 that are present in all the arguments. */
转载请注明出处:php1234.cn ,原文地址:http://www.php1234.cn/a/functions/2017/0403/209.html