例
比較兩個陣列(使用用戶定義的函數比較值)並返回不同的值 :
<?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陣列參考