例
比较两个阵列(使用用户定义的函数比较值)并返回不同的值 :
<?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"=>"blue","b"=>"black","e"=>"blue");
$result=array_udiff($a1,$a2,"myfunction");
print_r($result);
?>
运行示例» 定义和用法
所述array_udiff()函数比较两个或多个阵列的值 ,并返回的差异。
注:此功能使用用户定义的函数比较值!
这个函数比较两个值(or more)阵列,并返回包含从ARRAY1中不存在在数组2或ARRAY3等的条目的阵列
句法
array_udiff( array1,array2,array3...,myfunction )
参数 | 描述 |
---|---|
array1 | 需要。 该阵列从比较 |
array2 | 需要。 数组比较反对 |
array3,... | 可选的。 更多阵列来比较反对 |
myfunction | 需要。 限定一个可调用比较函数的字符串。 比较函数必须返回一个整数<,=或>大于0,如果第一个参数是<,=或>比所述第二参数 |
技术细节
返回值: | 返回包含从ARRAY1中不存在任何其它阵列的条目的阵列 |
---|---|
PHP版本: | 5.1.0+ |
更多示例
实施例1
比较三个阵列(使用用户定义函数来比较这两个值),并返回不同的值 :
<?php
function myfunction($a,$b)
{
if ($a===$b)
{
return
0;
}
return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue","yellow");
$a2=array("A"=>"red","b"=>"GREEN","yellow","black");
$a3=array("a"=>"green","b"=>"red","yellow","black");
$result=array_udiff($a1,$a2,$a3,"myfunction");
print_r($result);
?>
运行示例» <PHP阵列参考