例
比较两个数组的键和值 ,并返回匹配(using a user-defined key comparison function) :
<?php
function myfunction($a,$b)
{
if ($a===$b)
{
return 0;
}
return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("d"=>"red","b"=>"green","e"=>"blue");
$result=array_intersect_uassoc($a1,$a2,"myfunction");
print_r($result);
?>
运行示例» 定义和用法
所述array_intersect_uassoc()函数比较的键和两个值 (or more)阵列,并返回匹配。
注:此功能使用用户定义的函数比较的钥匙!
这个函数比较两个或多个阵列的键和值,并返回包含从ARRAY1存在于数组2的条目的阵列,ARRAY3,等
句法
array_intersect_uassoc( array1,array2,array3...,myfunction )
参数 | 描述 |
---|---|
array1 | 需要。 所述第一阵列是数组,其他人将被比较 |
array2 | 需要。 阵列与第一阵列进行比较 |
array3,... | 可选的。 阵列与第一阵列进行比较 |
myfunction | 需要。 限定一个可调用比较函数的字符串。 比较函数必须返回一个整数<,=或>大于0,如果第一个参数是<,=或>比所述第二参数 |
技术细节
返回值: | 返回包含从ARRAY1中存在的所有其他阵列的条目的阵列 |
---|---|
PHP版本: | 5+ |
更多示例
实施例1
比较三个阵列(使用用户定义的函数比较键),并返回匹配的键和值 :
<?php
function myfunction($a,$b)
{
if ($a===$b)
{
return 0;
}
return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"red","b"=>"green","d"=>"blue");
$a3=array("e"=>"yellow","a"=>"red","d"=>"blue");
$result=array_intersect_uassoc($a1,$a2,$a3,"myfunction");
print_r($result);
?>
运行示例» <PHP阵列参考