現在の位置: ホーム> 最新記事一覧> array_key_existsを使用してarrayキーが存在するかどうかを確認する方法は?

array_key_existsを使用してarrayキーが存在するかどうかを確認する方法は?

gitbox 2025-05-28

PHPプログラミングでは、指定されたキーが配列に存在するかどうかを判断するのは非常に一般的な操作です。 PHPは、この関数を実装するさまざまな方法を提供します。最もクラシックで広く使用されているのは、 array_key_exists関数です。この記事では、 array_key_existsを使用して、配列に指定されたキーがあるかどうかを判断し、例と組み合わせて説明する方法を詳細に紹介します。

array_key_existsとは何ですか?

array_key_existsは、指定されたキーが配列に存在するかどうかを検出するためのPHPに組み込み関数です。その構文は次のとおりです。

 array_key_exists(string|int $key, array $array): bool
  • $ key :検出されるキー名。文字列または整数です。

  • $配列:検出された配列。

  • 返品値:指定されたキーが配列に存在する場合はtrue返します。

使用の例

誰かの基本情報を表す配列があるとします。

 <?php
$userInfo = [
    "name" => "シャオミン",
    "age" => 25,
    "email" => "[email protected]"
];

// キー名を決定します "age" それは存在するしますか
if (array_key_exists("age", $userInfo)) {
    echo "鍵 'age' 存在する,値はです:" . $userInfo["age"];
} else {
    echo "鍵 'age' 存在しませんする";
}

上記のコードでは、 array_key_exists( "age"、$ userinfo)がtrueを返すため、出力は次のとおりです。

 鍵 'age' 存在する,値はです:25

ISSETとの違い

また、多くの開発者はISSETを使用してキーが存在するかどうかを判断しますが、これら2つの機能の間にいくつかのニュアンスがあります。

  • ISSET($ array [$ key])は、キーが存在する場合にのみtrueを返し、値がnullでない場合にのみ返します。

  • array_key_exists($ key、$ array)キーが存在する限り(値がnullかどうかに関係なく)、 trueを返します。

例えば:

 <?php
$data = [
    "foo" => null
];

var_dump(isset($data["foo"]));           // 出力: bool(false)
var_dump(array_key_exists("foo", $data)); // 出力: bool(true)

これは、 array_key_existsがキーの存在を判断するのに適していることを示していますが、 ISSETはキーが存在し、その値が有効かどうかを判断するのに適しています。

要約します

  • array_key_existsは、指定されたキーがPHPアレイに存在するかどうかを判断する優先関数です。

  • キーが存在するが、値がnullになる可能性がある状況で動作します。

  • シンプルな構文、使いやすい、適切な互換性。

  • ISSETarray_key_existsを混同しないように注意し、実際のニーズに応じて適切な関数を選択してください。


PHPアレイ操作に関する洞察を得たい場合は、公式ドキュメントhttps://gitbox.net/manual/en/function.array-key-exists.phpにアクセスできます。