キーでフラット化するPHP多次元配列

ロバート・W・ハンター

キーを使用して多次元(最大1〜3レベル)を平坦化する方法はありますか?

私はこのような配列を持っています

    array(
        'Orange',
        'Grape',
        'Banana' => array(
            'Big',
            'Small'
        ),
        'Apple' => array(
            'Red',
            'Green' => array(
                'Soft',
                'Hard'
            )
        )
    );

そして、私はそれをこのようにしたい

    array(
        'Orange',
        'Grape',
        'Banana',
        'Big',
        'Small',
        'Apple',
        'Red',
        'Green',
        'Soft',
        'Hard'
    );

したがって、最近インデックスを取得するために、出現順序を維持しますarray_keys

私はいくつかの方法を試しましたが、配列要素が新しい配列のキーである場合、それはフラット化されず、スキップされるだけなので、最終的な配列は次のようになります

array:7 [▼
  0 => "Orange"
  1 => "Grape"
  2 => "Big"
  3 => "Small"
  4 => "Red"
  5 => "Soft"
  6 => "Hard"
]
スティーブ

そのための再帰関数を書くことができます:

$nested = array(
    'Orange',
    'Grape',
    'Banana' => array(
        'Big',
        'Small'
    ),
    'Apple' => array(
        'Red',
        'Green' => array(
            'Soft',
            'Hard'
        )
    )
);

function flattern($array)
{
    $flat=[];
    foreach($array as $key=>$val){
        if(is_array($val)){
            $flat[]=$key;
            $flat = array_merge($flat, flattern($val));
        }else{
            $flat[]=$val;
        }
    }
    return $flat;
}

var_dump(flattern($nested));

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

PHP:多次元配列を特殊な形式にフラット化する

分類Dev

キーをプリセットするPHPで多次元配列を初期化する方法

分類Dev

PHPでフラット化された配列を多次元配列に変換する方法

分類Dev

PHP5.6複数のフィールドを持つ多次元配列をフラット化する

分類Dev

多次元配列をフラット化する再帰関数

分類Dev

Pythonでフィールドの合計を計算して多次元配列をフラット化する方法

分類Dev

PHPは多次元配列を文字列にフラット化します

分類Dev

多次元配列をフラットテキストファイルに保存する方法-PHP

分類Dev

多次元配列をフラット化しますが、キーは維持しますか?

分類Dev

レベルがいくつあるかわからない場合は、フラット配列をキーで多次元配列にグループ化します。PHP

分類Dev

多次元配列のインデックス/キーで使用するphpセーフ文字列

分類Dev

PHPは、foreachループでフラットをネストされた多次元配列に変換します

分類Dev

「未定義のオフセットエラー」php多次元配列

分類Dev

PHPで多次元配列を印刷する際の未定義のオフセット

分類Dev

多次元配列でキーを取得する

分類Dev

PHPでの多次元配列の再フォーマット

分類Dev

PHPのキーで多次元配列の値を比較する

分類Dev

PHPで多次元配列にキーを設定する方法

分類Dev

PHP で多次元配列を $_SESSION キーに変換する方法

分類Dev

キーで多次元配列を検索するPHP

分類Dev

多次元配列のセットをソートするPHP

分類Dev

PHPでキーと合計の値で多次元配列をグループ化する

分類Dev

キーでリストする多次元配列

分類Dev

多次元配列をC ++のスーパークラスの多次元配列にキャストする

分類Dev

多次元配列を再フォーマットする方法

分類Dev

より多くのキーで多次元配列をグループ化する方法

分類Dev

多次元配列初期化ブラケット

分類Dev

Javascript:再帰を使用して多次元配列を所定の位置にフラット化する

分類Dev

PHP値が同じである多次元配列をグループ化する方法

Related 関連記事

  1. 1

    PHP:多次元配列を特殊な形式にフラット化する

  2. 2

    キーをプリセットするPHPで多次元配列を初期化する方法

  3. 3

    PHPでフラット化された配列を多次元配列に変換する方法

  4. 4

    PHP5.6複数のフィールドを持つ多次元配列をフラット化する

  5. 5

    多次元配列をフラット化する再帰関数

  6. 6

    Pythonでフィールドの合計を計算して多次元配列をフラット化する方法

  7. 7

    PHPは多次元配列を文字列にフラット化します

  8. 8

    多次元配列をフラットテキストファイルに保存する方法-PHP

  9. 9

    多次元配列をフラット化しますが、キーは維持しますか?

  10. 10

    レベルがいくつあるかわからない場合は、フラット配列をキーで多次元配列にグループ化します。PHP

  11. 11

    多次元配列のインデックス/キーで使用するphpセーフ文字列

  12. 12

    PHPは、foreachループでフラットをネストされた多次元配列に変換します

  13. 13

    「未定義のオフセットエラー」php多次元配列

  14. 14

    PHPで多次元配列を印刷する際の未定義のオフセット

  15. 15

    多次元配列でキーを取得する

  16. 16

    PHPでの多次元配列の再フォーマット

  17. 17

    PHPのキーで多次元配列の値を比較する

  18. 18

    PHPで多次元配列にキーを設定する方法

  19. 19

    PHP で多次元配列を $_SESSION キーに変換する方法

  20. 20

    キーで多次元配列を検索するPHP

  21. 21

    多次元配列のセットをソートするPHP

  22. 22

    PHPでキーと合計の値で多次元配列をグループ化する

  23. 23

    キーでリストする多次元配列

  24. 24

    多次元配列をC ++のスーパークラスの多次元配列にキャストする

  25. 25

    多次元配列を再フォーマットする方法

  26. 26

    より多くのキーで多次元配列をグループ化する方法

  27. 27

    多次元配列初期化ブラケット

  28. 28

    Javascript:再帰を使用して多次元配列を所定の位置にフラット化する

  29. 29

    PHP値が同じである多次元配列をグループ化する方法

ホットタグ

アーカイブ