2つの配列のキーと値を比較し、その差異を返します(2つのユーザ定義関数を使用します):
<?php
function myfunction_key($a,$b)
{
if ($a===$b)
{
return 0;
}
return ($a>$b)?1:-1;
}
function myfunction_value($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","c"=>"green");
$result=array_udiff_uassoc($a1,$a2,"myfunction_key","myfunction_value");
print_r($result);
?>
例の実行 »
array_udiff_uassoc() 関数は、2つ以上の配列のキーと値を比較し、その差異を返します。
注: この関数は、比較に2つのユーザ定義関数を使用します; キーには最初の関数が、値には2番目の関数が使われます!
この関数は、2つ(以上)の配列のキーと値を比較し、array2 や array3などに存在しないarray1のエントリを含む配列を返します。
array_udiff_uassoc(array1,array2,array3...,myfunction_key,myfunction_value)
パラメータ | 説明 |
---|---|
array1 | 必須。比較する配列 |
array2 | 必須。比較される配列 |
array3,... | 任意。次の比較される配列 |
myfunction_key | 必須。配列のキーを比較するユーザ定義関数名。 呼び出し可能な比較関数を定義する文字列。 比較関数は、最初の引数が2番目の引数よりも <、= または > の場合は、0 よりも < 、= または > である整数を返す必要があります |
myfunction_value | 必須。配列の値を比較するユーザ定義関数名。 呼び出し可能な比較関数を定義する文字列。 比較関数は、最初の引数が2番目の引数よりも <、= または > の場合は、0 よりも < 、= または > である整数を返す必要があります. |
返り値: | 他の配列のいずれにも存在しない、 array1のエントリを含む配列を返します |
---|---|
PHP バージョン: | 5+ |