異なる値を取得する 3 つの方法: 1. 配列のキー値を比較し、異なる値を含む差分配列を返します。構文は「array_diff(array 1, array 2)」です。 2. 配列のキー名を比較し、異なる値を含む差分配列を返します (構文は「array_diff_key(array 1, array 2)」です)。 3. 配列のキー名とキー値を比較し、異なる値を含む差分配列を返します。構文は「array_diff_assoc(配列 1, 配列 2)」です。
このチュートリアルの動作環境: Windows7 システム、PHP バージョン 8.1、DELL G3 コンピューター
php はさまざまな値を取得します。 2 つの配列、比較です。 2 つの配列、差分セットを取得します。
PHP では配列を比較する場合、キー値のみの比較、キー名のみの比較、キー値とキー名の比較の 3 つの状況があります。 3 つの組み込み関数に対応します:
array_diff()
array_diff_key()
array_diff_assoc ()
例を通して学びましょう:
1. array_diff() 関数を使用します -- キー値を比較しますarray
array_diff() 関数は、2 つ (またはそれ以上) の配列の値を比較し、その差を返すために使用されます。
array_diff(array1,array2,array3...);
この関数は、2 つ (またはそれ以上) の配列 (key=>value in value) の値を比較し、比較されるすべての配列 (array1) を含む差分配列を返します。ただし、他のパラメータ配列 (array2 や array3 など) には含まれません。
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array(1,2,3,4,5,6); $arr2=array(2,4,6,8,10,12); var_dump($arr1); var_dump($arr2); echo "两个数组的不同值:"; $result=array_diff($arr1,$arr2); var_dump($result); ?>
2. array_diff_key() 関数を使用して配列のキー名を比較します
array_diff_key() 関数は次の目的で使用されます。 (またはそれ以上の) 配列の 2 つのキー名を比較し、差分セットを返します。
array_diff_key(array1,array2,array3...);
この関数は、2 つ (またはそれ以上) の配列のキー名を比較し、比較された配列 (array1) 内のすべてを含むが他のパラメーターには含まれない差分配列を返します。配列内のキー名 (array2 または配列3など)。
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow"); var_dump($arr1); var_dump($arr2); echo "两个数组的不同值:"; $result=array_diff_key($arr1,$arr2); var_dump($result); ?>
上の例では、配列 $arr1 と配列 $arr2 に異なる 2 つのキー名があります。配列 $arr1 に基づいて、値 ""c"=> が計算されます。 " blue"
" および ""d"=>" yellow"
" であるため、出力結果は次のようになります:
3、array_diff_assoc() 関数を使用します - 配列のキー名とキー値を比較します。
array_diff_assoc() 関数は、2 つのキー名とキー値を比較するために使用されます (またはmore) 配列を取得し、差分セットを返します。
array_diff_assoc(array1,array2,array3...);
この関数は、2 つ (またはそれ以上) の配列のキー名とキー値を比較し、比較された配列 (array1) 内のすべてを含むが、どの Key にも含まれない差分配列を返します。他のパラメーター配列 (array2 または array3 など) の名前とキー値。
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow"); var_dump($arr1); var_dump($arr2); echo "两个数组的不同值:"; $result=array_diff_assoc($arr1,$arr2); var_dump($result); ?>
上記の例では、$arr1 配列と $arr2 配列を比較しています。3 つの異なる要素があり、値 ""a"=>"red が取得されます。配列 $arr1. "
", ""c"=>"blue"
", ""d"=>" yellow"
" なので、出力結果は次のとおりです:
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPで2つの配列から異なる値を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。