ホームページ > バックエンド開発 > PHPチュートリアル > さまざまなアプローチで PHP のネストされた配列に効果的にアクセスするにはどうすればよいですか?

さまざまなアプローチで PHP のネストされた配列に効果的にアクセスするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-17 22:04:02
オリジナル
279 人が閲覧しました

How to Effectively Access Nested Arrays in PHP with Different Approaches?

ネストされた配列を使用した PHP foreach

ネストされた配列の値にアクセスすることを目的としたこのシナリオでは、foreach ループは効果的なツール。その使用法を理解するには、次の例を検討してください。

<code class="php">$tmpArray = [
    [
        'one',
        [1, 2, 3]
    ],
    [
        'two',
        [4, 5, 6]
    ],
    [
        'three',
        [7, 8, 9]
    ]
];</code>
ログイン後にコピー

ネストされた配列の値を反復するには、次のネストされた foreach ループを使用します。

<code class="php">foreach ($tmpArray as $innerArray) {
    if (is_array($innerArray)) {
        foreach ($innerArray as $value) {
            echo $value;
        }
    } else {
        echo $innerArray;
    }
}</code>
ログイン後にコピー

このアプローチにより、両方の配列を処理できます。

ネストされた配列の深さがわからない場合は、再帰が代替方法です。このコードは、配列メンバーをインデント付きで再帰的に表示します:

<code class="php">function displayArrayRecursively($arr, $indent='') {
    if ($arr) {
        foreach ($arr as $value) {
            if (is_array($value)) {
                displayArrayRecursively($value, $indent . '--');
            } else {
                echo "$indent $value \n";
            }
        }
    }
}</code>
ログイン後にコピー

第 3 レベルの値のみを表示したい特定のケースでは、コードを次のように変更できます:

<code class="php">foreach ($tmpArray as $inner) {

    if (is_array($inner)) {
        foreach ($inner[1] as $value) {
           echo "$value \n";
        }
    }
}</code>
ログイン後にコピー

このアプローチでは、ネストされた配列の値が 3 番目のレベル ([1, 2, 3]、[4, 5, 6]、および [7, 8, 9]) に表示されます。

以上がさまざまなアプローチで PHP のネストされた配列に効果的にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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