PHP引用实现树状数组

        $refer = [];//临时数组
        $tree = [];//树状结构
        $list = [];//二维带level
        foreach ($data as $key => $value) {
            $refer[$value['id']] = &$data[$key];
        }
        foreach ($data as $k => $v) {
            if ($v['parent'] == $this->node->id) {
                $data[$key]['level'] = 1;
                $tree[] = &$data[$k];

            } else {
                if (isset($refer[$v['parent']])) {
                    $pack = &$refer[$v['parent']];
                    $data[$k]['level'] = $pack['level'] + 1;
                    $pack['children'][] = &$data[$k];
                }
            }
            $list[] = $data[$k];
        }

posted @ 2021-09-24 17:35  可爱香草  阅读(8)  评论(0)    收藏  举报  来源