PHP将数组中某一相同字段作为同级其他字段合并到一起

光看标题可能不能明白什么意思,具体还是要看例子,就是我有一个数组$arr里面的name字段相同,因此我想将除name字段以外的字段合并到一个数组里进行汇总 $arr = [ [ 'name' = '中国', 'zd1' = '江苏', 'zd2' = '南京' ], [ 'name' = '中国', 'zd1' = '内蒙古', 'zd

光看标题可能不能明白什么意思,具体还是要看例子,就是我有一个数组$arr里面的name字段相同,因此我想将除name字段以外的字段合并到一个数组里进行汇总

php">$arr = [
            [
                'name'  => '中国',
                'zd1' => '江苏',
                'zd2'   => '南京'
            ],
            [
                'name'  => '中国',
                'zd1' => '内蒙古',
                'zd2'   => '呼和浩特'

            ],
            [
                'name'  => '小说榜',
                'zd1' => '每日',
                'zd2'   => '坏蛋是怎样炼成的'

            ],
            [
                'name'  => '小说榜',
                'zd1' => '每月',
                'zd2'   => '黑道学生'

            ]

        ];

        $temp = array();
        $result = array();
        foreach ($arr as $item) {

            if (!in_array($item['name'], $temp)) {
                array_push($temp, $item['name']);
                $result[count($temp) - 1]['name'] = $item['name'];
            }
            $result[count($temp) - 1]['list'][] = [
                'zd1' => $item['zd1'],
                'zd2' => $item['zd2']
            ];
        }
        dump($result);
结果如下图所示:

本文标题为:PHP将数组中某一相同字段作为同级其他字段合并到一起

基础教程推荐