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:如何优雅地获取跨层级组件实例(拒绝递归)
Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段