代码之家  ›  专栏  ›  技术社区  ›  Ashish

组数据中的组数组

  •  -1
  • Ashish  · 技术社区  · 7 年前

    从关联数组生成组数组后,现在数组的格式如下。为了制作这个组数组,我使用了以下代码:

    foreach($upcoming_data_arr as $key => $item)
            {
                $arr[$item['year']][$key] = $item;
            } 
    
    Array
    (
        [2018] => Array
            (
                [0] => Array
                    (
                        [id] => 6
                        [year] => 2018
                        [month] => 11
                    )
    
                [1] => Array
                    (
                        [id] => 5
                        [year] => 2018
                        [month] => 12
                    )
    
                [2] => Array
                    (
                        [id] => 4
                        [year] => 2018
                        [month] => 11
                    )
    
                [3] => Array
                    (
                        [id] => 3
                        [year] => 2018
                        [month] => 11
                    )
            )
    )
    

    现在我需要另一组数组,根据年内月组。在本例中,组数据数组如下所示:

     Array
        (
            [2018] => Array
                (
                    [11] => Array
                        (
                            [0] => Array
                                (
                                [id] => 6
                                [year] => 2018
                                [month] => 11
                                )
    
                            [1] => Array
                                (
                                [id] => 4
                                [year] => 2018
                                [month] => 11
                                )
    
                            [2] => Array
                               (
                                [id] => 3
                                [year] => 2018
                                [month] => 11
                                )
    
                        )
    
                    [12] => Array
                        (
                            [0] => Array
                               (
                               [id] => 5
                               [year] => 2018
                               [month] => 12
                               )
                        )
                )
        )
    

    我们将如何得到这个输出?

    1 回复  |  直到 7 年前
        1
  •  1
  •   ETNyx    7 年前

    当您创建一个由$item['month']标识的数组时,再添加一个“维度”,并让php通过[]决定最后一个“维度”键:

    foreach($upcoming_data_arr as $key => $item) {
        $arr[$item['year']][$item['month']][] = $item;
    }
    
    推荐文章