TP5 foreach 2级(二级) 嵌套循环
例子:
学生模块
————学生管理
————添加学生
栏目模板
————管理栏目
用户模块
————用户管理
————权限管理
————分组管理
图标模块
————图标模块
系统设置
————学校模块
————后台首页
————合作单位
————上报教学站点
模板html代码:
{volist name="res" id="v"}
<div id="div1">
{$v.title}
{if condition="$v['child'] neq ''"}
{volist name="v.child" id="v2"}<div id="div2">————{$v2.title}</div>
{/volist}
{/if}
</div>
{/volist}
TP5 控制器代码:
$res = Db::name('menu')->where('flid',1)->order('uid desc')->select();foreach($res as $k => $v){$res2 = Db::name('menu')->where("pid",$v['id'])->select();$res[$k]['child'] = $res2;}$this->assign('res',$res);
首先列出所有一级栏目,
再列出对应一级栏目的二级栏目
3级 嵌套循环:http://blog.csdn.net/haibo0668/article/details/78464944
进阶例子:
$where = new Where;if($state){$where['state'] = $state-1;}if($search){$where['number'] = ['like', "%".$search."%"]; }$where['deleted'] = 0;$where['user_id'] = $Session['user_id'];$list = Db::name('order')->field('id,number,price,type,state,time,pay_time')->where($where)->order(['id' => 'desc'])->paginate(10,false,['query' => request()->param(),'type' => 'page\Page','var_page' => 'page']);if(!empty($list)){foreach($list as $k => $v){$oprs = Db::name('order_product')->field('id,title,num,price,pid,controller,img')->where('number',$v['number'])->select();if(!empty($oprs)){foreach($oprs as $k2 => $v2){if($v2['controller']=='Combination'){//组合$p_list= Db::name('order_product_clist')->field('id,title,controller,price,img,type_mold,num,pid')->where('opid',$v2['id'])->select();if(!empty($p_list)){$cbrs=[];foreach($p_list as $k3=> $v3){// //$price31 +=$v3['price'];$cbrs[$k3]['id']=$v3['pid'];$cbrs[$k3]['title']=$v3['title'];// //$cbrs['price']=$v3['price'];$cbrs[$k3]['img']=$v3['img']?\app\admin\model\Common::file_url($v3['img']):$this->system_config['system_index_no_img'];if($v3['controller']=='Live'){$ttt="直播";}elseif($v3['controller']=='Video'){$ttt="点播";}elseif($v3['controller']=='Testpaper'){$ttt="试卷";}elseif($v3['controller']=='Shop'){$ttt="商城";}else{$ttt="其它";}$cbrs[$k3]['controller']=$v3['controller'];$cbrs[$k3]['type_title']=$ttt;}}else{$cbrs=[];}}if($v2['controller']=='Testpaper'){//试卷 试卷ID要加密//$v2['id'] = 21;$v2['pid'] = model('index/CommonModel')->lock_url($v2['id'],'id');}else{$v2['pid'] =$v2['pid'];}if($v2['controller']=='Live'){$type_title1='直播';}elseif($v2['controller']=='Video'){$type_title1='点播';}elseif($v2['controller']=='Testpaper'){$type_title1='试卷';}elseif($v2['controller']=='Shop'){$type_title1='商品';}elseif($v2['controller']=='Combination'){$type_title1='组合';}else{$type_title1='商品';}$v2['type_title']=$type_title1;$v2['img'] =$v2['img']?\app\admin\model\Common::file_url($v2['img']):$this->system_config['system_index_no_img'];$v2['child'] =$cbrs;$oprs[$k2] = $v2;}}else{$oprs=[];}$v['child'] =$oprs;$list[$k] = $v;}}
出处:http://bbs.csdn.net/topics/392029744
TP5 foreach 2级(二级) 嵌套循环相关推荐
- PHPMywind while 二级嵌套循环
目标:获取一级栏目以及该栏目下的二级栏目内容 以下是循环部分的代码: <?php$sql1 = "SELECT * FROM `#@__infoclass` WHERE length ...
- tp5 foreach循环出现Indirect modification of overloaded element of think\paginator\driver\Bootst错误
thinkphp5使用paginator分页查询数据后,需要foreach便利处理某一字段的数据,会出现类似题目的错误.主要是因为tp5使用分页类读取的数据不是纯数组的格式!所以在循环的时候需要用数据 ...
- (转)HBase二级索引与Join
二级索引与索引Join是Online业务系统要求存储引擎提供的基本特性.RDBMS支持得比较好,NOSQL阵营也在摸索着符合自身特点的最佳解决方案. 这篇文章会以HBase做为对象来探讨如何基于Hba ...
- 大学生计算机二级大集报名最好,在校大学生如何报名计算机二级?
2009-12-05 回答 首先要根据你的所学专业来衡量自己考哪项 计算级二级有c语言, vb, vf, java, access, c++ 六项可选 考其中一个你会的 考下来能拿计算机二级了 考试分 ...
- php循环volist,ThinkPHP中循环遍历的两种方法(volist和foreach标签)
在ThinkPHP中系统提供了两个标签来实现便利操作:volist标签和foreach标签. volist语法格式: 循环体 注意:volist是双标签语句,需要闭合. foreach语法格式: 循环 ...
- java初级面试复习总结大全
知识点 1.throwable:继承自Object类,实现serializable接口,两个子类 error和 exception 二者的不同之处: Exception: 1.可以是可被控制(chec ...
- CGB2005 0831 jt5
0831 江哥链接 https://blog.csdn.net/qq_16804847/article/details/108315987 day05 问题归纳总结 子类继承父类=属性/方法/属性的值 ...
- Java EE 企业级应用开发教程 第2版
Java EE 企业级应用开发教程 第2版 Spring 介绍 概述 分层的 Java 一站式轻量级开源框架 控制反转 (IoC) 面向切面编程(AOP) 优点 非侵入式设计 降低耦合性,方便开发 支 ...
- Hibernate查询缓存全面分析
http://blog.csdn.net/security08/article/details/5670980 这里介绍Hibernate查询缓存对Iterator不起作用,只对List起作用. 缓存 ...
最新文章
- 利用MOG2背景模型提取运动目标的OpenCV代码
- javah导出类的头文件抛出异常——java.lang.IllegalArgumentException: Not a valid class name(原因及解决方法)
- 为memcached增加缓存依赖的程序实现
- 用过那些号称媲美迅雷的下载神器,发现没一个能打的。
- 学术论文SCI、期刊、毕业设计中的图表专用软件
- 内置式永磁同步电机IPMSM,基于虚拟信号注入法最大转矩电流比MTPA控制仿真模型
- 可以讨论HTML5的QQ群有哪些,QQ群有哪些种类你都知道吗?
- 求顺序表的交集和并集
- 靠一套PPT上市估值120亿:新能源韭菜的自我修养
- 【效率】代码对比工具,我就用这6个
- dlink虚拟服务器设置,dlink虚拟服务器设置
- 马自达css滑动按钮,纯css的滑块开关按钮
- jq实现购物车结算和数量更改功能
- mybatis-plus clickhouse支持分页
- memcached与redis技术的对比试验
- 【千寻位置前端校招笔试、一面、二面】
- 解决:JedisNoReachableClusterNodeException: No reachable node in clust
- 码云新增 PR 显示权限助力计算机教学
- c语言重修,C语言重修班复习.ppt
- 那些很厉害的人是怎么构建知识体系的