首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[分享]php多维数组转成二维数组

发布于 2025-04-27 17:47:27
0
50
$multidimensionalArray = [
    24 => [
        'id' => 25,
        'rid' => 24,
        'aid' => 50,
        'cid' => 2,
        'username' => '访客fasdfasdf',
        'article' => '塔顶栽载',
        'email' => '6ff6s@cc.cc',
        'ip' => '127.0.0.1',
        'msg' => 'afasfdasdfsadf[Frown]',
        'good' => 0,
        'bad' => 0,
        'cate' => 0,
        'status' => 1,
        'createTime' => 1717906197,
        'lv' => 0,
        'son' => [
            25 => [
                'id' => 26,
                'rid' => 25,
                'aid' => 50,
                'cid' => 2,
                'username' => '访客65656556',
                'article' => '塔顶栽载',
                'email' => 'scarep@tutamail.com',
                'ip' => '127.0.0.1',
                'msg' => '[Yeah][Bomb][Addoil][Applause][Badlaugh]fasdsfasdf[Fabulous][Sinistersmile]文章不错,写的很好!',
                'good' => 0,
                'bad' => 0,
                'cate' => 0,
                'status' => 1,
                'createTime' => 1717906401,
                'lv' => 1,
                'son' => [
                    26 => [
                        'id' => 27,
                        'rid' => 26,
                        'aid' => 50,
                        'cid' => 2,
                        'username' => '访客99999',
                        'article' => '塔顶栽载',
                        'email' => '373889161@qq.com',
                        'ip' => '127.0.0.1',
                        'msg' => '赞、狂赞、超赞、不得不赞、史上最赞!文章不错,写的很好!',
                        'good' => 0,
                        'bad' => 0,
                        'cate' => 0,
                        'status' => 1,
                        'createTime' => 1717917312,
                        'lv' => 2,
                        'son' => [],
                    ],
                ],
            ],
        ],
    ],
];

/**
 * @param $arr
 * @return array
 * 多维数组转成二维数组
 */
function oneArr($arr){
    $tree = [];
    foreach($arr as $v){
        $nar = array(
            'id' => $v['id'],
            'rid' => $v['rid'],
            'aid' => $v['aid'],
            'cid' => $v['cid'],
            'username' => $v['username'],
            'article' => $v['article'],
            'email' => $v['email'],
            'ip' => $v['ip'],
            'msg' => $v['msg'],
            'good' => $v['good'],
            'bad' => $v['bad'],
            'cate' => $v['cate'],
            'status' => $v['status'],
            'createTime' => $v['createTime'],
            'lv' => $v['lv']
        );
        $tree[] = $nar;
        if($v['son']){
            $tree = array_merge($tree,oneArr($v['son']));
        }
    }
    return $tree;
}

使用示例:


echo '<pre>';
$ne = oneArr($multidimensionalArray );
print_r($ne);

输出结果:

Array
(
    [0] => Array
    (
        [id] => 25
            [rid] => 24
            [aid] => 50
            [cid] => 2
            [username] => 访客fasdfasdf
[article] => 塔顶栽载
[email] => 6ff6s@cc.cc
[ip] => 127.0.0.1
            [msg] => afasfdasdfsadf[Frown]
[good] => 0
            [bad] => 0
            [cate] => 0
            [status] => 1
            [createTime] => 1717906197
            [lv] => 0
        )

    [1] => Array
(
    [id] => 26
            [rid] => 25
            [aid] => 50
            [cid] => 2
            [username] => 访客65656556
[article] => 塔顶栽载
[email] => scarep@tutamail.com
[ip] => 127.0.0.1
            [msg] => [Yeah][Bomb][Addoil][Applause][Badlaugh]fasdsfasdf[Fabulous][Sinistersmile]文章不错,写的很好!
[good] => 0
            [bad] => 0
            [cate] => 0
            [status] => 1
            [createTime] => 1717906401
            [lv] => 1
        )

    [2] => Array
(
    [id] => 27
            [rid] => 26
            [aid] => 50
            [cid] => 2
            [username] => 访客99999
[article] => 塔顶栽载
[email] => 373889161@qq.com
[ip] => 127.0.0.1
            [msg] => 赞、狂赞、超赞、不得不赞、史上最赞!文章不错,写的很好!
[good] => 0
            [bad] => 0
            [cate] => 0
            [status] => 1
            [createTime] => 1717917312
            [lv] => 2
        )

)
评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流