PHP で配列要素を検索するための最適なオプションは、配列のサイズ、大文字と小文字の区別が必要かどうか、およびキー値情報が必要かどうかによって異なります。大きな配列の場合、array_search() と array_key_exists() は高速であり、大文字と小文字が区別されます。キー値の情報が必要な場合は in_array() を使用します。キーのみが必要な場合は、array_key_exists() を使用するのが最も高速です。実用的な例: 特定の要素が配列内に存在するかどうかを確認するには、高速で使いやすい in_array() を使用できます。
PHP で配列内の特定の要素を検索する最良の方法
PHP では、配列を検索する方法がいくつかあります。特定の要素の有無。ニーズに最適な方法を選択するには、各方法の長所と短所を理解することが重要です。
1. in_array()
in_array()
関数は、指定された値が配列内に存在するかどうかを確認します。 2 つのパラメータを取ります:
<?php $array = ['foo', 'bar', 'baz']; if (in_array('bar', $array)) { echo "bar exists in the array"; } ?>
in_array()
利点:
欠点:
2. array_search()
array_search()
関数は指定された値を検索します。最初のキー。 2 つのパラメータを取ります:
<?php $array = ['foo' => 'bar', 'bar' => 'baz', 'baz' => 'foo']; $key = array_search('bar', $array); if ($key !== false) { echo "bar exists in the array at key $key"; } ?>
array_search()
利点:
欠点:
in_array()
より遅い#3. array_key_exists()
array_key_exists() 関数チェックかどうか指定されたキーが配列内に存在します。 2 つのパラメータを取ります:
<?php $array = ['foo' => 'bar', 'bar' => 'baz', 'baz' => 'foo']; if (array_key_exists('bar', $array)) { echo "bar exists in the array as a key"; } ?>
array_key_exists() 利点:
および
array_search() より高速
実用的なケース:
ユーザー ID の配列があると仮定します:$users = [1, 2, 3, 4, 5];ユーザー ID 3 が配列内に存在するかどうかを確認するには、次のコードを使用できます:
if (in_array(3, $users)) { echo "User ID 3 exists"; }
選択ガイド:
は効率が悪い場合がありますが、
array_search() と
array_key_exists() は高速です。
または
array_key_exists() を使用します。
を使用します。
以上がPHP は配列内の特定の要素に最適なオプションを見つけますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。