PHP根据键值,把一维数组按条件转换成二维数组


:对于一个一维数组,如果按某个相同键值,就将其归为一类,最终转换成一个二维数组,比如下面数组,如果 parent_id 上级id相同,就转换成一类,即同一个省下面的市全部放在一起。

    $area = [
        [
            'id'   => 100,
            'name' => '武汉市',
            'parent_id' => 201,
        ],
        [
            'id'   => 101,
            'name' => '宜昌市',
            'parent_id' => 201,
        ],
        [
            'id'   => 102,
            'name' => '黄冈市',
            'parent_id' => 201,
        ],
        [
            'id'   => 301,
            'name' => '广州市',
            'parent_id' => 401,
        ],
        [
            'id'   => 302,
            'name' => '深圳市',
            'parent_id' => 401,
        ],
    ];

:可以用一个foreach循环处理下,代码如下

$area_list = [];
foreach ($area as $key => $value) {
    $area_list[$value['parent_id']][] = $value;
}

:最终打印如下

 

 :结束


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM