ホームページ >バックエンド開発 >PHPチュートリアル >PHP配列検索関数 in_array()、array_search()、array_key_exists()の使用例_PHPチュートリアル
PHP には、指定された値が配列内に存在するかどうかを調べる方法がたくさんあります。昔、愚かにも foreach ループを使って調べたことを思い出します。ここでは、主に PHP の 3 つの組み込み配列関数の使用方法を共有します。指定された値が配列に存在するかどうかを確認するには、これらの 3 つの配列は in_array()、array_search()、array_key_exists() です。
まずはそれぞれの定義と機能をご紹介します
in_array(値,配列,型)
この関数の機能は、配列内の指定された値を検索することです。type はオプションのパラメーターです。このパラメーターが true に設定されている場合、検索されたデータの型と配列の値が同じかどうかを確認します。つまり、それらは互いに等しい。例:
一致が見つかりました
array_key_exists(キー,配列)
この関数は、指定されたキーが配列に存在するかどうかを判断するもので、キーが存在する場合は true を返し、存在しない場合は false を返します。例:
キーは存在します!
array_search(値,配列,厳密)
array_search() 関数は in_array() と同じで、配列内のキー値を検索します。値が見つかった場合は、一致する要素に対応するキーが返されます。見つからない場合は false を返します。 PHP 4.2.0 より前では、関数は失敗時に false ではなく null を返していたことに注意してください。同様に、3 番目のパラメーター strict が true に指定されている場合、データ型と値が一貫している場合にのみ、対応する要素のキー名が返されます。例:
広告
実際の性能比較後、データ量が1000未満など大きくない場合は、どの検索方法でも性能のボトルネックにはなりません。ただし、データ量が比較的大きい場合は、array_key_exists を使用する方が適切です。テストによると、array_key_exist は in_array よりも 10 倍、さらには数十倍効率的です。