"John", "age" => 20, "gender" => "male") 、array("n"/> "John", "age" => 20, "gender" => "male") 、array("n">

ホームページ  >  記事  >  バックエンド開発  >  PHP配列内の指定された値をクエリする方法

PHP配列内の指定された値をクエリする方法

PHPz
PHPzオリジナル
2023-04-18 09:47:17696ブラウズ

大量のデータを含む PHP 配列があるときに、特定の値を見つけたいという状況に遭遇したことはありますか?この記事では、PHP 配列の指定された値をクエリする方法を紹介します。

まず、問題をよりよく理解するために配列の例を見てみましょう:

$data = array(
    array("name" => "John", "age" => 20, "gender" => "male"),
    array("name" => "Lisa", "age" => 25, "gender" => "female"),
    array("name" => "Jack", "age" => 30, "gender" => "male"),
    array("name" => "Emily", "age" => 35, "gender" => "female"),
);

これは、名前、年齢、性別を持つ 4 人の人の配列です。この配列を使用して、PHP で配列内の指定された値をクエリする方法を示します。

方法 1: foreach ループを使用する

最初の方法は、PHP の foreach ループを使用して配列を走査し、次に if ステートメントを使用して各値が現在の値と等しいかどうかを確認することです。探している。この方法は非常にシンプルで簡単で、小さな配列にはうまく機能しますが、配列が大きくなると効率が低下します。

次は、foreach ループを使用したサンプル コードです:

$search = "Lisa";
foreach($data as $key => $value) {
    if($value['name'] == $search) {
        echo "Name: ".$value['name'].", Age: ".$value['age'].", Gender: ".$value['gender']."<br>";
    }
}

出力結果:

Name: Lisa, Age: 25, Gender: female

検索変数を使用して、探している名前と " foreach" ループは各 value を反復処理し、その値が "search" 変数に格納されている名前と等しいかどうかを確認します。その場合は、関連情報を印刷します。

方法 2: PHP 組み込み関数 array_filter を使用する

2 番目の方法では、PHP の array_filter 関数を使用します。この関数は、チェック条件を満たす値を含む新しい配列を返します。

以下は、array_filter 関数を使用したサンプル コードです:

$search = "male";
$newArray = array_filter($data, function ($value) use ($search) {
    return $value['gender'] == $search;
});
foreach($newArray as $key => $value) {
    echo "Name: ".$value['name'].", Age: ".$value['age'].", Gender: ".$value['gender']."<br>";
}

出力結果:

Name: John, Age: 20, Gender: male
Name: Jack, Age: 30, Gender: male

検索変数を使用して、探している性別、「 array_filter" 関数は、値の性別が "search" 変数に格納されている性別と等しいかどうかをそれぞれチェックし、等しい場合は新しい配列に追加します。最後に、foreach ループを使用して、新しい配列の各値に関する情報を出力します。

方法 3: PHP 組み込み関数 array_search を使用する

3 番目の方法は、PHP の array_search 関数を使用することです。この関数は、配列内に初めて出現する値を持つキーを返します。は 1 次元配列に適用されます。

次は、array_search 関数を使用したサンプル コードです。

$search = "Lisa";
$key = array_search($search, array_column($data, 'name'));
echo "Name: ".$data[$key]['name'].", Age: ".$data[$key]['age'].", Gender: ".$data[$key]['gender']."<br>";

出力結果:

Name: Lisa, Age: 25, Gender: female

検索変数を使用して、検索する名前を保存し、 「array_column」関数を使用して、多次元配列から名前を抽出します。配列内の指定された「name」列を取得します。次に、「array_search」関数を使用して、配列内で最初に出現するキーを検索し、キー変数に格納します。最後に、key 変数を使用して、探している名前に一致する関連情報を出力します。

概要

PHP で指定された値をクエリするには、さまざまな方法があります。どの方法を選択するかは、配列のサイズとコード実装のニーズによって異なります。どちらの方法を使用しても、大量のデータを扱うときにデータに高速にアクセスできるため、Web サイトのパフォーマンスが向上し、開発がより効率的になります。

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

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