ホームページ >バックエンド開発 >PHPチュートリアル >PHP で「array_column()」を使用して多次元配列を平坦化する方法?

PHP で「array_column()」を使用して多次元配列を平坦化する方法?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-13 06:05:14638ブラウズ

How to Flatten a Multidimensional Array in PHP Using `array_column()`?

多次元配列を単一の配列に変換する方法

問題:

多次元配列は不要な構造物に遭遇しました。目標は、これを 1 次元配列に単純化し、ネストされた配列内の必要な値のみを抽出することです。

解決策:

多次元配列を多次元配列に変換するには一次元配列の場合は、array_column() 関数を利用できます。この関数は、多次元配列から特定の列を効果的に抽出します。概念的には、テーブルまたは行列から列を抽出するのと似ています。

実装:

$array = array_column($array, 'plan');

スクリプトの内訳:

  • $array: 必要な多次元配列を表します
  • array_column() 関数: この関数は 2 つの引数を取ります:

    • 最初の引数は、変換される多次元配列です。
    • 2 番目の引数は、変換される多次元配列です。引数は、抽出する必要な列またはキーを指定します。この場合、このキーの値を取得するために 'plan' を指定します。

例:

提供された多次元の使用array:

$array = array(
    0 => array(
        'plan' => 'basic'
    ),
    1 => array(
        'plan' => 'small'
    ),
    2 => array(
        'plan' => 'novice'
    ),
    3 => array(
        'plan' => 'professional'
    ),
    4 => array(
        'plan' => 'master'
    ),
    5 => array(
        'plan' => 'promo'
    ),
    6 => array(
        'plan' => 'newplan'
    )
);

一次元配列に変換するには、次のコードを実行できます。使用:

$newArray = array_column($array, 'plan');

結果の $newArray は次の構造になります:

Array(
    [0] => 'basic',
    [1] => 'small',
    [2] => 'novice',
    [3] => 'professional',
    [4] => 'master',
    [5] => 'promo',
    [6] => 'newplan'
)

追加情報:

  • 詳細array_column() 関数の詳細については、公式 PHP ドキュメントを参照してください。
  • これこのソリューションでは、すべての内部配列が同じキー構造を持つことを前提としています。そうでない場合は、追加の処理が必要になる可能性があります。

以上がPHP で「array_column()」を使用して多次元配列を平坦化する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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