ホームページ  >  記事  >  バックエンド開発  >  PHPクエリ配列の指定値の位置

PHPクエリ配列の指定値の位置

WBOY
WBOYオリジナル
2023-05-07 20:17:36944ブラウズ

PHP では、配列は非常に一般的で強力なデータ型です。 PHP 配列を使用するプロセスで最も一般的な操作の 1 つは、配列内の指定された値の位置をクエリすることです。この記事では、この操作を実現するいくつかの異なる方法を紹介します。

方法 1: array_search() 関数を使用する

array_search() 関数は、PHP の組み込み関数の 1 つで、配列内の指定された値を検索し、そのキー名を返すために使用されます。値。この関数の使用は非常に簡単です。2 つのパラメータを渡すだけです。1 つ目は検索する値で、2 つ目は配列です。関数は配列内で指定された値を検索し、そのキー名を返します。

以下はサンプル コードです:

$fruits = array("apple", "banana", "orange");
$key = array_search("banana", $fruits);
echo "The key of banana is: " . $key;  //输出:The key of banana is: 1

方法 2: in_array() 関数と array_keys() 関数を使用する

array_search() 関数に加えて、PHPまた、in_array() 関数と array_keys() 関数という 2 つの関数も提供されており、配列内の指定された値の位置をクエリするために使用することもできます。

in_array() 関数は、指定された値が配列に存在するかどうかを確認するために使用され、存在する場合は true を返し、存在しない場合は false を返します。指定した値のキー名を取得する必要がある場合は、array_keys() 関数を使用できます。この関数は、指定した値のすべてのキー名を含む配列を返します。

以下はサンプル コードです:

$fruits = array("apple", "banana", "orange");
if (in_array("banana", $fruits)) {
    $keys = array_keys($fruits, "banana");
    echo "The key of banana is: " . implode(",", $keys);  //输出:The key of banana is: 1
}

方法 3: foreach() ループを使用する

組み込み関数を使用することに加えて、次の場所を見つけることもできます。配列を走査して指定された値を取得する場合の具体的な手順は次のとおりです:

  1. foreach() を使用して配列をループします;
  2. ループ内で、配列の各値を比較しますターゲット値を使用;
  3. 一致が成功すると、現在のキー名が返されます。

以下はサンプル コードです:

$fruits = array("apple", "banana", "orange");
$search = "banana";
foreach ($fruits as $key => $value) {
    if ($search == $value) {
        echo "The key of $search is: " . $key;  //输出:The key of banana is: 1
        break;
    }
}

この方法はより直観的ですが、大きな配列での検索には時間がかかる可能性があるため、適切ではないことに注意してください。大きな配列の処理用。

概要:

上記の 3 つの方法はすべて、PHP 配列内の指定された値の位置をクエリするために使用できます。その中で、array_search() 関数を使用するのが最も簡単で最速の方法です。指定した値を含むすべてのキー名を取得する必要がある場合は、in_array() 関数を array_keys() 関数と組み合わせて使用​​できます。より小さい配列で特定の値を見つける必要がある場合は、ループ トラバーサルを使用できます。

どのメソッドが使用されるかに関係なく、これは一般的な配列操作の 1 つです。実際の開発では、状況に応じて最適な配列の処理方法を選択する必要があります。

以上がPHPクエリ配列の指定値の位置の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。