PHP は、値が 2 次元配列の id にあるかどうかを判断します。

WBOY
リリース: 2023-05-23 15:21:38
オリジナル
419 人が閲覧しました

PHP 開発者にとって、配列の操作は日常業務の中で非常に一般的なタスクの 1 つです。多くの場合、他の多くの配列を含む 2 次元配列から特定の値を見つける必要があります。この記事では、PHP の 2 次元配列の ID に値が含まれているかどうかを確認する方法を読者に紹介します。

まず、2 次元配列とは何かを見てみましょう。簡単に言えば、2 次元配列は複数の配列を含む配列です。各内部配列には独自のキーと値があり、通常は 2 つのキーを使用できます。最初のキーは外部配列の内部配列にアクセスするために使用され、2 番目のキーは内部配列の値にアクセスするために使用されます。例:

$employees = array(
   array("id" => 101, "name" => "John"),
   array("id" => 102, "name" => "Mary"),
   array("id" => 103, "name" => "Peter")
);
ログイン後にコピー

上記の例では、$employees は 3 つの内部配列を含む 2 次元配列です。各内部配列には、値 101/John、102/Mary、および 103/Peter を持つ 2 つのキー (ID と名前) があります。

ここで、特定の ID 値が上記の配列に存在するかどうかを調べたいとします。PHP の foreach ループを使用してそれを見つけることができます。コード例は次のとおりです。

$found = false;
$search_id = 102;
foreach ($employees as $employee) {
    if ($employee['id'] === $search_id) {
        $found = true;
        break;
    }
}
if ($found) {
    echo "The ID is in the array";
} else {
    echo "The ID isn't in the array";
}
ログイン後にコピー

この例では、まず変数 $found を定義し、それを false に初期化します。次に、変数 $search_id を定義し、探している特定の ID 値をそれに割り当てます。次に、foreach ループを使用して $employees 配列をループし、if ステートメントを使用して各内部配列の ID キーが $search_id と等しいかどうかを確認します。一致するものが見つかった場合は、$found 変数を true に設定し、break ステートメントを使用してループを終了します。最後に、$found 変数の値をチェックして、特定の ID 値が配列内にあるかどうかを判断します。

この方法は比較的単純ですが、大規模な 2 次元配列ではパフォーマンスの問題が発生する可能性があります。特に検索が頻繁に必要な場合、毎回完全な配列の走査を行うとアプリケーションのパフォーマンスが低下する可能性があります。この問題を回避するには、PHP で array_column 関数と in_array 関数を使用します。

array_column 関数は、指定されたキーの値を含む入力配列から新しい配列を返す非常に便利な PHP 関数です。したがって、上記の $employees 配列から id 値を抽出したい場合は、次のコードを使用できます:

$ids = array_column($employees, 'id');
ログイン後にコピー

上記の例では、$employees 配列を最初のパラメーターとして array_column に渡しています。関数を使用し、2 番目のパラメータとして ID を渡します。 $employees 内部配列内のすべての ID 値を含む新しい配列を返します。

次に、in_array 関数を使用して、探している特定の値が $ids 配列内にあるかどうかを確認します。コード例は次のとおりです。

$search_id = 102;
if (in_array($search_id, $ids)) {
    echo "The ID is in the array";
} else {
    echo "The ID isn't in the array";
}
ログイン後にコピー

この例では、まず変数 $search_id を定義し、検索する特定の ID の値をそれに割り当てます。次に、in_array 関数を使用して、$search_id が $ids 配列に存在するかどうかを確認します。一致する場合は「ID が配列内にあります」というメッセージが出力され、一致しない場合は「ID が配列内にありません」というメッセージが出力されます。

要約すると、2 次元配列内の特定の値を見つけることは、PHP 開発者にとって非常に一般的なタスクです。この記事では、配列全体の走査に foreach ループを使用する方法と、array_column 関数と in_array 関数を使用する 2 つの方法について説明します。どちらの方法を使用する場合でも、プログラムのパフォーマンスと可読性を確保する必要があります。

以上がPHP は、値が 2 次元配列の id にあるかどうかを判断します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!