ホームページ > バックエンド開発 > PHPの問題 > PHPの2次元配列にフィールドが含まれるかどうか

PHPの2次元配列にフィールドが含まれるかどうか

王林
リリース: 2023-05-24 12:39:37
オリジナル
585 人が閲覧しました

PHP プログラミングでは、配列は非常に一般的なデータ型であり、2 次元配列はさらに一般的です。 2 次元配列内の特定のフィールドを検索する必要がある場合はどうすればよいでしょうか?この記事では、PHP の 2 次元配列に特定のフィールドが含まれているかどうかを確認する方法を説明します。

1. php の 2 次元配列とは何ですか?

php では、配列に複数の値を保存できます。配列内の値自体が配列である場合、その配列は 2 次元配列と呼ばれます。例:

$fruits = array(
    array("apple", "red"),
    array("banana", "yellow"),
    array("grape", "purple"),
);
ログイン後にコピー

上記のコードでは、$fruits は 3 つの配列を含む 2 次元配列であり、各配列には 2 つの値が含まれます。

2. 2 次元配列に特定のフィールドが含まれているかどうかを判断する方法

PHP の 2 次元配列に特定のフィールドが含まれているかどうかを判断するには、さまざまな方法があります。 : メソッド:

1. in_array() 関数を使用します

function check_array($arr, $key, $value){
    foreach($arr as $item){
        if(in_array($value, $item) && in_array($key, $item)){
            return true;
        }
    }
    return false;
}
ログイン後にコピー

in_array() 関数を使用して 2 次元配列を走査します。2 次元配列に $key と $value が含まれている場合は、の場合は true を返し、それ以外の場合は false を返します。このメソッドは配列内の値の位置のみを決定でき、キー名は決定できないことに注意してください。

使用方法:

$people = array(
    array("name" => "Tom", "age" => 18),
    array("name" => "Lily", "age" => 20),
    array("name" => "Lucy", "age" => 22),
);

if(check_array($people, "name", "Tom")){
    echo "包含Tom的人员信息";
}else{
    echo "不包含Tom的人员信息";
}
ログイン後にコピー
ログイン後にコピー

2. foreach() ループを使用します

function check_array($arr, $key, $value){
    foreach ($arr as $k => $v) {
        if ($v["$key"] == $value) {
            return true;
        }
    }
    return false;
}
ログイン後にコピー

foreach() ループを使用して 2 次元配列を走査し、$ があるかどうかを判断します2 次元配列。key はキー名、value は $value の配列要素です。存在する場合は true を返し、存在しない場合は false を返します。

使用法:

$people = array(
    array("name" => "Tom", "age" => 18),
    array("name" => "Lily", "age" => 20),
    array("name" => "Lucy", "age" => 22),
);

if(check_array($people, "name", "Tom")){
    echo "包含Tom的人员信息";
}else{
    echo "不包含Tom的人员信息";
}
ログイン後にコピー
ログイン後にコピー

3. 概要

PHP プログラミングでは、2 次元配列が一般的なデータ型です。 2 次元配列に特定のフィールドが含まれているかどうかを判断する必要がある場合は、in_array() 関数または foreach() ループを使用して判断できます。特定のビジネス ニーズに基づいて、適切な方法を選択する必要があります。

以上がPHPの2次元配列にフィールドが含まれるかどうかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート