ホームページ > バックエンド開発 > PHPの問題 > 指定されたキーが PHP 配列に存在するかどうかを確認する方法

指定されたキーが PHP 配列に存在するかどうかを確認する方法

PHPz
リリース: 2023-04-25 10:08:58
オリジナル
544 人が閲覧しました

PHP では、配列は非常に一般的で重要なデータ型であり、一連のデータを保存し、キーと値のペアを使用してアクセスおよび操作できます。開発プロセスでは、指定されたキーが配列内に存在するかどうかを確認する必要があることがよくありますが、これは非常に基本的ですが実際的な問題です。今日は、PHP 配列に指定されたキーが存在するかどうかを確認する方法について説明します。

まず最初に、PHP のいくつかの基本的な配列関数を明確にする必要があります。このうち、最もよく使用されるのは array_key_exists() と isset() です。次にこの2つの機能とその使い方を詳しく紹介していきます。

1. array_key_exists()

array_key_exists() は、指定されたキーが配列内に存在するかどうかを判断するために使用される PHP 組み込み関数です。この関数は 2 つのパラメータを受け取ります。1 つ目はキー名、2 つ目は配列です。

関数定義:

bool array_key_exists (mixed $key, array $array)

パラメータの説明:

key: チェックするキーの名前。 NULL を含む任意のタイプの値を指定できます。

array: チェックする配列。配列であり、関数の 2 番目のパラメーターである必要があります。

戻り値:

指定されたキーが配列内に存在する場合は TRUE が返され、それ以外の場合は FALSE が返されます。

次は簡単な例です:

$arr = array('name' => 'Jack', 'age' => 20, 'country' => 'China');

if (array_key_exists('name', $arr)) {
    echo '数组中存在键名为 name 的元素';
} else {
    echo '数组中不存在键名为 name 的元素';
}
ログイン後にコピー

実行結果は次のようになります: 配列内にキー名 name を持つ要素が存在します

2. isset()

isset() も、変数が設定されているかどうか、NULL ではないかどうかを検出するために使用される PHP 組み込み関数です。この関数は、任意の型の値を指定できる 1 つ以上のパラメーターを受け入れます。

関数定義:

bool isset (mixed $var [,mixed $...] )

パラメータの説明:

var: 必須パラメータ 、変数名または配列要素。 NULL を含む任意のタイプの値を指定できます。

...: オプションのパラメータ。複数のパラメータを指定できます。各パラメータは変数名または配列要素です。

戻り値:

変数が設定されており、NULL でない場合は TRUE を返し、それ以外の場合は FALSE を返します。

具体的な例を見てみましょう:

$arr = array('name' => 'Jack', 'age' => 20, 'country' => 'China');

if (isset($arr['name'])) {
    echo '数组中存在键名为 name 的元素';
} else {
    echo '数组中不存在键名为 name 的元素';
}
ログイン後にコピー

実行結果は次のようになります: 配列内にキー名 name を持つ要素があります

この例からわかるように、配列にはキー名 name を持つ要素があります。 、 isset() 関数を使用して配列内に要素が存在するかどうかを判断することは、基本的に array_key_exists() 関数を使用するのと同じ効果があります。 2 つの違いは、 isset() 関数は配列要素の検出だけでなく、変数が設定されているかどうかの検出にも使用できることです。

ただし、isset()関数は未定義変数に対してエラーを通知するため、この関数を使用して未定義変数を判定するとプログラムが異常終了する可能性がありますので注意してください。

さらに、PHP 配列に指定されたキーがあるかどうかを確認する別の方法として、in_array() 関数を使用する方法があります。ただし、in_array() 関数は、キー名を検索するのではなく、配列内の特定の値を検索し、その値が存在するかどうかを返すために使用されることに注意してください。したがって、配列内にキーが存在するかどうかを判断するために in_array() 関数を使用することは適切ではありません。

実際の開発では、通常、自分たちのニーズに基づいて使用する関数を選択します。キー名が存在するかどうかのみを検出する必要がある場合は、array_key_exists() 関数または isset() 関数を使用できます (どちらも同様の効果があります)。また、配列内に値が存在するかどうかを検索する必要がある場合は、次の関数を使用できます。 in_array() 関数を使用します。

要約すると、今日は、PHP 配列に指定されたキーがあるかどうかを判断する方法について説明しました。 array_key_exists() 関数と isset() 関数の使用方法を説明することで、読者の日常の開発作業に役立つことを願っています。

以上が指定されたキーが PHP 配列に存在するかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート