ホームページ >バックエンド開発 >PHPチュートリアル >PHPの配列関数のarray_diff_key()の使い方を詳しく解説

PHPの配列関数のarray_diff_key()の使い方を詳しく解説

王林
王林オリジナル
2023-06-27 17:18:19897ブラウズ

人気のプログラミング言語である PHP の配列関数も非常に強力です。 2 つの配列のキー名を比較する必要がある場合は、array_diff_key() 関数を使用できます。この関数は、最初の配列にはあるが 2 番目の配列には存在しないキー名を見つけて、配列間の違いを比較するのに役立ちます。この記事ではarray_diff_key()関数の使い方を詳しく紹介します。

array_diff_key() 関数の基本的な使用法

array_diff_key() 関数の構文は次のとおりです。

array array_diff_key ( array $array1 , array $array2 [, array $... ] )

この関数は複数の配列をパラメータとして受け取ります。最初のパラメータは次のとおりです。元の配列、後続のパラメータは比較される配列です。この関数は、最初の配列には存在するが他の配列には存在しないキーに対応する新しい配列を返します。

たとえば、2 つの配列があります:

$array1 = array('name' => 'Peter', 'age' => 20, 'address' => 'Shanghai');
$array2 = array('name' => 'Mike', 'sex' => 'male', 'address' => 'Beijing');

次のコードを通じてこれら 2 つの配列を比較できます:

$result = array_diff_key($array1, $array2);
print_r($result);

出力結果は次のとおりです:

Array ( [age] => 20 )

結果からわかるように、キー名 'age' の要素のみを含む新しい配列が得られました。これは、'age' が $array1 にのみ存在し、$array2 には存在しないためです。

注意事項

array_diff_key() 関数は配列のキー名のみを比較し、キー値は比較しないことに注意してください。したがって、2 つの配列内の一部のキーが同じキー値に対応する場合でも、関数はそれらを相違点としてリストします。

array_diff_key() 関数は、複数の配列間の差異の比較もサポートします。たとえば、3 つの配列があります:

$array1 = array('name' => 'Peter', 'age' => 20, 'address' => 'Shanghai');
$array2 = array('name' => 'Mike', 'sex' => 'male', 'address' => 'Beijing');
$array3 = array('name' => 'Lucas', 'age' => 22, 'hobby' => 'swimming');

次のコードを通じてこれら 3 つの配列を比較できます:

$result = array_diff_key($array1, $array2, $array3);
print_r($result);

出力結果は次のとおりです:

Array ( [age] => 20 )

結果からわかるように、「age」は $array1 にのみ存在し、他の 2 つの配列には存在しないため、キー名「age」を持つ要素のみを含む新しい配列が得られます。

結論

array_diff_key() 関数は、2 つ以上の配列間の違いを素早く見つけるのに役立つ非常に便利な PHP 配列関数です。この関数を使用する場合、キー値ではなく配列のキー名のみを比較することに注意する必要があります。

以上がPHPの配列関数のarray_diff_key()の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。