thinkphp5.0递归获取栏目层级

Posted 白了又了白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp5.0递归获取栏目层级相关的知识,希望对你有一定的参考价值。

    /*
     * 递归获取栏目层级
     * @param $ishow  是否显示栏目
     * @param $id  查询的id《第一次查询是0》
     * @param $len 长度(默认0
     * @param $field 指定字段
     */
    public function menud($ishow,$id,$len,$field=‘*‘){
        $dh=db(‘columns‘);
        $where[‘datatype‘] = [‘=‘,1];
        $where[‘parent_id‘] = [‘=‘,$id];
        $where[‘ishow‘] = [‘=‘,$ishow];
        $where[‘ishome‘] = [‘=‘,1];
        $left=$dh->where($where)->order(‘num asc,id asc‘)->field($field)->select();

        for ($i=0; $i < count($left) ; $i++) {
            $left[$i][‘fun‘] = db(‘fun‘)->where(‘id‘,‘=‘,$left[$i][‘fun‘])->value(‘fun‘);
            $sub=$this->menud($ishow,$left[$i][‘id‘],$len+1,$field);
            if($sub){
                $left[$i][‘chid‘]=$sub;
            }
        }
        return $left;
    }

 

以上是关于thinkphp5.0递归获取栏目层级的主要内容,如果未能解决你的问题,请参考以下文章

Vue 开发实战基础篇 # 13:如何优雅地获取跨层级组件实例(拒绝递归)

16.如何优雅地获取跨层级组件实例(拒绝递归)

thinkphp5.0学习笔记获取信息,变量,绑定参数

PHP使用递归按层级查找数据

Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段

thinkphp5.0 获取URL信息