PHP は、データを処理し、Web サーバーから動的コンテンツを提供できる、広く使用されているサーバー側スクリプト言語です。 PHP では、配列は複数のデータ項目を格納できる非常に一般的なデータ型であり、キーまたはインデックスによってアクセスできます。実際のプログラミングでは配列に特定のキーがあるかどうかを判定する必要があることが多いですが、この記事ではそれをPHPで実装する方法を紹介します。
PHP 組み込み関数 array_key_exists() を使用すると、配列内に特定のキーが存在するかどうかを判断できます。この関数には 2 つのパラメータが必要です。最初のパラメータはチェックするキー名、2 番目のパラメータはチェックする配列です。この関数は、指定されたキーが配列内に存在する場合は true を返し、それ以外の場合は false を返します。
サンプルコード:
$arr = array('name' => 'John', 'age' => 30); if (array_key_exists('name', $arr)) { echo "数组中存在 'name' 键"; } else { echo "数组中不存在 'name' 键"; }
実行結果:
数组中存在 'name' 键
PHP組み込み関数isset()で以下のことができます。変数が設定されており、配列内に存在するかどうかを判断します。この関数は、特定のキーが配列内に存在するかどうかを判断するために使用でき、その戻り値は array_key_exists() に似ています。
サンプルコード:
$arr = array('name' => 'John', 'age' => 30); if (isset($arr['name'])) { echo "数组中存在 'name' 键"; } else { echo "数组中不存在 'name' 键"; }
実行結果:
数组中存在 'name' 键
キー値が存在するが、その値がnullの場合、isset()関数はfalseを返すことに注意してください。 。したがって、isset()で判定する場合は、実際の状況に応じて演算子の種類を決定する必要があります。
組み込み関数 in_array() を使用すると、値が配列内にすでに存在するかどうかを確認できます。この関数は、指定された値が配列内にすでに存在する場合は true を返し、それ以外の場合は false を返します。さらに、この関数を使用して値が配列のキーであるかどうかを確認する場合、この関数は PHP5.5 以降でのみ使用でき、関数でキーと値を区別するには 3 番目のパラメーター true を追加する必要があります。
サンプルコード:
$arr = array('name' => 'John', 'age' => 30); if (in_array('name', $arr)) { echo "存在 'name' 键"; } else { echo "不存在 'name' 键"; }
実行結果:
不存在 'name' 键
PHP 7.3 は array_key_first のサポートを開始しました() 関数と array_key_last() 関数、それらの関数は、それぞれ配列内の最初のキーと最後のキーの名前を返すことです。
サンプルコード:
$arr = array('name' => 'John', 'age' => 30); $first_key = array_key_first($arr); $last_key = array_key_last($arr); echo "数组第一个键: " . $first_key . "<br>"; echo "数组最后一个键: " . $last_key;
実行結果:
数组第一个键: name 数组最后一个键: age
array_key_first 関数と array_key_last 関数を使用すると、配列内のキーの存在を確認することで、配列が空かどうかを判断できます。 。
サンプルコード:
$arr1 = array(); $arr2 = array('name' => 'John', 'age' => 30); if (array_key_first($arr1) === null) { echo "数组1为空数组<br>"; } if (array_key_first($arr2) !== null) { echo "数组2不是空数组"; }
実行結果:
数组1为空数组 数组2不是空数组
概要
この記事では、PHP に特定のキーまたはインデックスが存在するかどうかを確認する 4 つの方法を紹介します。 array の場合、それらはそれぞれ array_key_exists()、isset()、in_array() および array_key_first()、array_key_last() 関数です。これらの機能には絶対的な良し悪しがあるわけではなく、実際のプロジェクトのニーズに応じて最適な方法を選択する必要があります。同時に、in_array() を使用する場合はバージョンの互換性など、いくつかの詳細に注意する必要があります。実際に継続的に学習、実験、最適化を行うことで、より良いプログラムが生まれます。
以上がPHPで配列にキーがあるかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。