2つの配列の値を比較し、その差異を返します(値の比較にはユーザ定義関数を使用します):
<?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() 関数は、2つ以上の配列の値を比較し、その差異を返します。
注: この関数は、ユーザ定義関数を使用して値を比較します!
この関数は、2つ(以上)の配列の値を比較し、array2 や array3などに存在しないarray1のエントリを含む配列を返します。
array_udiff(array1,array2,array3...,myfunction)
パラメータ | 説明 |
---|---|
array1 | 必須。比較する配列 |
array2 | 必須。比較される配列 |
array3,... | 任意。次の比較される配列 |
myfunction | 必須。呼び出し可能な比較関数を定義する文字列。 比較関数は、最初の引数が2番目の引数よりも <、= または > の場合は、0 よりも < 、= または > である整数を返す必要があります |
返り値: | 他の配列のいずれにも存在しない、 array1のエントリを含む配列を返します |
---|---|
PHP バージョン: | 5.1.0+ |
3つの配列の値を比較し、その差を返します(ユーザ定義関数を使用して値を比較します):
<?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);
?>
例の実行 »