phpサブキー値で複数のレイヤーの深さの多次元配列を並べ替える

MiddleSiggy

この配列がありますが、「C0」キーの値で配列を並べ替える必要があります

$tmp_array_value = array (
  '9e5dae29ec5a83d503f2e4d4b5f29f91' =>
  array (
    '007Hal007' =>
    array (
      'C0' => 2,
      'C1' => 1,
      'C2' => 1,
    ),
  ),
  '9317264ea7cc25c6f4f92bbdeb01ec63' =>
  array (
    '011210' =>
    array (
      'C0' => 3,
      'C1' => 1,
      'C2' => 1,
      'C3' => 1,
    ),
  ),
  'c911f95676eb7e5979fda3770bff1a03' =>
  array (
    '022218' =>
    array (
      'C0' => 1,
      'C1' => 1,
      'C2' => 1,
      'C3' => 1,
    ),
  )

最初の2つのキーレベルが変更されますが、C0 {count / number}値で並べ替える必要があります

結果は次のようになると思います。

$tmp_array_value = array (
  'c911f95676eb7e5979fda3770bff1a03' =>
  array (
    '022218' =>
    array (
      'C0' => 1,
      'C1' => 1,
      'C2' => 1,
      'C3' => 1,
    ),
  ),  '9e5dae29ec5a83d503f2e4d4b5f29f91' =>
  array (
    '007Hal007' =>
    array (
      'C0' => 2,
      'C1' => 1,
      'C2' => 1,
    ),
  ),
  '9317264ea7cc25c6f4f92bbdeb01ec63' =>
  array (
    '011210' =>
    array (
      'C0' => 3,
      'C1' => 1,
      'C2' => 1,
      'C3' => 1,
    ),
  ),

/ iは、usortまたは他の複数の関数を使用してこれを実現する方法がわかりません。

助けてください

ニック

配列内の要素ごとに異なる第2レベルのキーがあるためarray_values、比較関数内で使用して、これらの配列のインデックスを再作成し、C0各要素の値にアクセスできるようにする必要があります。またuasort、関連付けキーを保持するためにを使用する必要があります。

uasort($tmp_array_value, function ($a, $b) {
    return array_values($a)[0]['C0'] - array_values($b)[0]['C0'];
});

print_r($tmp_array_value);

第2レベルの配列には要素が1つしかないため、(@ Kevinが指摘しているように)使用することもできます。

return reset($a)['C0'] - reset($b)['C0'];

'CO'最初の配列要素から値を取得します。

出力:

Array
(
    [c911f95676eb7e5979fda3770bff1a03] => Array
        (
            [022218] => Array
                (
                    [C0] => 1
                    [C1] => 1
                    [C2] => 1
                    [C3] => 1
                )    
        )    
    [9e5dae29ec5a83d503f2e4d4b5f29f91] => Array
        (
            [007Hal007] => Array
                (
                    [C0] => 2
                    [C1] => 1
                    [C2] => 1
                )    
        )    
    [9317264ea7cc25c6f4f92bbdeb01ec63] => Array
        (
            [011210] => Array
                (
                    [C0] => 3
                    [C1] => 1
                    [C2] => 1
                    [C3] => 1
                )    
        )
)

3v4l.orgのデモ

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

PHPで複数の値を持つ多次元配列を並べ替える

分類Dev

多次元配列を値の一意の配列キーで並べ替える

分類Dev

キー値を使用してPHPの多次元配列を並べ替える

分類Dev

キーでphpの異なる形式の多次元配列を並べ替える

分類Dev

PHPのキーで多次元配列を並べ替える最良の方法

分類Dev

2つのキーで多次元配列を並べ替える方法

分類Dev

多次元配列を複数のフィールドで並べ替える

分類Dev

多次元配列phpを値を持つ複数のフィールドで並べ替えます

分類Dev

複数の条件付きでPHPの多次元配列を並べ替える

分類Dev

多次元配列で数値を並べ替える際の問題

分類Dev

多次元配列を並べ替える-キーの値を保持する

分類Dev

PHP:キーの値に関連する用語に基づいて多次元配列を並べ替える

分類Dev

多次元配列を2つの配列で並べ替えるPHP

分類Dev

多次元配列を3つの値で並べ替える

分類Dev

多次元配列を値の1で並べ替える

分類Dev

APIからの値で多次元配列を並べ替える

分類Dev

多次元配列を2つの値で並べ替える

分類Dev

PHPのテーブル多次元配列配列で並べ替えて出力

分類Dev

多次元配列のアルファを数値で並べ替える

分類Dev

comapareが同じ値で、PHPの他のキーに依存している場合、多次元配列を並べ替える方法は?

分類Dev

多次元配列をサブキーで並べ替えます。テキストキーが消える問題

分類Dev

サイズ値で多次元配列を並べ替える

分類Dev

PHPで多次元配列のキーを入れ替える

分類Dev

jQuery:複数の列値でテーブルを並べ替える

分類Dev

PHPの値による多次元配列の並べ替え

分類Dev

SQLテーブルを複数の列で並べ替える

分類Dev

Javafxテーブルを複数の列で並べ替える

分類Dev

複数のキー値による配列の並べ替え

分類Dev

PHPのキー関数で配列を並べ替える

Related 関連記事

  1. 1

    PHPで複数の値を持つ多次元配列を並べ替える

  2. 2

    多次元配列を値の一意の配列キーで並べ替える

  3. 3

    キー値を使用してPHPの多次元配列を並べ替える

  4. 4

    キーでphpの異なる形式の多次元配列を並べ替える

  5. 5

    PHPのキーで多次元配列を並べ替える最良の方法

  6. 6

    2つのキーで多次元配列を並べ替える方法

  7. 7

    多次元配列を複数のフィールドで並べ替える

  8. 8

    多次元配列phpを値を持つ複数のフィールドで並べ替えます

  9. 9

    複数の条件付きでPHPの多次元配列を並べ替える

  10. 10

    多次元配列で数値を並べ替える際の問題

  11. 11

    多次元配列を並べ替える-キーの値を保持する

  12. 12

    PHP:キーの値に関連する用語に基づいて多次元配列を並べ替える

  13. 13

    多次元配列を2つの配列で並べ替えるPHP

  14. 14

    多次元配列を3つの値で並べ替える

  15. 15

    多次元配列を値の1で並べ替える

  16. 16

    APIからの値で多次元配列を並べ替える

  17. 17

    多次元配列を2つの値で並べ替える

  18. 18

    PHPのテーブル多次元配列配列で並べ替えて出力

  19. 19

    多次元配列のアルファを数値で並べ替える

  20. 20

    comapareが同じ値で、PHPの他のキーに依存している場合、多次元配列を並べ替える方法は?

  21. 21

    多次元配列をサブキーで並べ替えます。テキストキーが消える問題

  22. 22

    サイズ値で多次元配列を並べ替える

  23. 23

    PHPで多次元配列のキーを入れ替える

  24. 24

    jQuery:複数の列値でテーブルを並べ替える

  25. 25

    PHPの値による多次元配列の並べ替え

  26. 26

    SQLテーブルを複数の列で並べ替える

  27. 27

    Javafxテーブルを複数の列で並べ替える

  28. 28

    複数のキー値による配列の並べ替え

  29. 29

    PHPのキー関数で配列を並べ替える

ホットタグ

アーカイブ