• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
车车大人
博客园    首页    新随笔    联系   管理     

无限极递归的处理方式

//先查询所有的数组
    public function getAll(){
        $data = $this->select();
        //调用递归查询相关的小数组
        return $this->digui($data,$pid=0);
    }

    //定义一个递归的方法
    public function digui($data,$pid=0){
        //定义一个儿子的数组,形成孙子结构
        $child = [];
        foreach ($data as $k => $v){
            if($v['pid']==$pid){
                $child[] = $v;
            }
        }

        //判断一下$child是不是空的
        if(empty($child)){
            return null;
        }

        //如果不是空的,继续循环他的孙子
        foreach ($child as $kk => $vv){
            $res = $this->digui($data,$vv['nid']);
            $child[$kk]['child'] = $res;
        }

        return $child;
    }

 

通往牛逼的路上,在意的只有远方!
posted @ 2020-10-20 16:36  车车大人  阅读(307)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3