无限极分类展示和递归查询添加

无限极分类展示和递归权限查询

1.无限极分类

    public function getAllList(){
    $data=self::get()->toArray();
        //处理
        return $this->getTree($data);
    }

    //递归调用
    public function getTree($data,$pid=0,$level=0){
        static $arr=[];//需要为静态的数组 将函数中此变量的值保存至下一次调用时
        foreach ($data as $item){
            //找父级
            if($item['pid']==$pid){
                $item['html']=str_repeat('--',$level*2);
                $item['level']=$level+1;
                $arr[]=$item;
                $this->getTree($data,$item['offices_id'],$item['level']);
            }
        }
        return $arr;
    }

2.递归查询—这里是五表联查

    //获取权限
    public static function getNode($id){
        $data=self::join('user_role','zg5_user.id','=','user_role.uid')
            ->join('role','user_role.rid','=','role.rid')
            ->join('role_node','role.rid','=','role_node.rid')
            ->join('node','role_node.nid','=','node.nid')
            ->where('zg5_user.id',$id)
            ->get();
        return self::getTree($data,0);
    }
    //递归处理
    public static function getTree($data,$pid=0){
        $new=[];
        foreach ($data as $v){
            if ($v['pid']==$pid){
                $v['child']=self::getTree($data,$v['nid']);
                $new[]=$v;
            }
        }
        return $new;
    }
$('input[type="checkbox"]:checked').each(function(){
                kaka.push($(this).val());
            });

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值