php循环volist,Thinkphp的volist标签嵌套循环使用教程
本文较为详细的对ThinkPHP的volist标签嵌套的用法阐述如下:
首先,在Thinkphp开发手册中,有关于标签嵌套的解释说明。如下:
标签嵌套:
模板引擎支持标签的多层嵌套功能,可以对标签库的标签指定可以嵌套。
系统内置的标签中,volist(及其别名iterate)、switch、if、elseif、else、foreach、compare(包括所有的比较标签)、(not)present、(not)empty、(not)defined等标签都可以嵌套使用。例如:
{$sub.name}
上面的标签可以用于输出双重循环。
默认的嵌套层次是3级,所以嵌套层次不能超过3层,如果需要更多的层次可以指定TAG_NESTED_LEVEL配置参数。但是在Action中具体应该怎样赋值“list”呢?从说明中可以看出,list应该是一个二维数组,下边是一段测试代码,经测试可以使用。
$Baojia=new Model('baojia');
$Class=new Model('class');
$parent=$Class->select();
foreach($parent as $n=> $val){
$parent[$n]['voo']=$Baojia->where('belongto=\''.$val['name'].'\'')->select();
}
$this->assign('list',$parent);
{$vo.name}
{$sub.name}
数据库中定义了两个表,一个是报价表,一个是分类表,实现的功能是像树形菜单一样,显示分类,每个分类下边是各个型号的报价。
代码主要功能是:
1.首先创建模型:
$Baojia=new Model('baojia');
$Class=new Model('class');
2.然后查询分类中的数据,这一步非常重要,因为我们知道,数据库查询返回的是类似表格的二维形式的数据,当我们取出单条数据时,相当与读取每行数据。当调用时,thinkphp后台会自动读取每一行数据。
$parent=$Class->select();
将报价中的数据存入$parent中,其中$n是$parent数组的序号,也就相当于存入$parent中的数据表,每行添加一个索引,这个索引指向属于这个分类的报价。
foreach($parent as $n=> $val){
$parent[$n]['voo']=$Baojia->where('belongto=\''.$val['name'].'\'')->select();
}
3.最后:
$this->assign('list',$parent);
显示输出!
通过这个程序,可以更深入的理解标签,其实如果在数据库操作中,标签的name只能assign 成数据库表类型(当然也可以是数组型,因为数据库查询得到的数据本身就是数组型的),当我们在视图页面调用标签时,特别是嵌套调用时,始终记住每一层的name都必须是数组型的,像本程序中,最外层,这里的list就是我们最初定义的$parent,这个变量指向查询class表得到的数据表,里层,也就是$parent[$n]['voo']所指向的数据表,也就是报价表中的相应数据。
通过这样的分析,条理已经很清晰了,举一反三就可以实现N重循环,当然如果需要更多的层次可以指定TAG_NESTED_LEVEL配置参数。
这样的话,就可以实现例如:国家->省->市->县->乡镇等多重循环
php循环volist,Thinkphp的volist标签嵌套循环使用教程相关推荐
- php循环volist,ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
本文实例讲述了ThinkPHP模板Volist标签嵌套循环输出多维数组的方法.分享给大家供大家参考,具体如下: ThinkPHP 中对 volist 标签嵌套使用可实现多维数组的输出. volist ...
- php中volist怎么循环,Thinkphp的volist标签嵌套循环使用教程_PHP
ThinkPHP 本文较为详细的对ThinkPHP的volist标签嵌套的用法阐述如下: 首先,在Thinkphp开发手册中,有关于标签嵌套的解释说明.如下: 标签嵌套: 模板引擎支持标签的多层嵌套功 ...
- thinkphp ajax volist,thinkphp中volist标签在ajax使用有哪些注意事项
这次给大家带来thinkphp中volist标签在ajax使用有哪些注意事项,下面就是实战案例,一起来看一下. 背景 在一个ThinkPHP的复杂页面(包含volist)中实现volist标签显示Jq ...
- php循环volist,ThinkPHP采用volist实现三级循环代码实例
本文以实例描述了ThinkPHP采用标签实现三级循环代码,具体操作步骤如下: 1. 三级循环需要三维数组,实现代码如下: function MakeTree($pid,$level) { $map[' ...
- php volist模板,ThinkPHP 模板 Volist 标签嵌套循环输出多维数组
ThinkPHP 中对 volist 标签嵌套使用可实现多维数组的输出. volist 嵌套使用 一般的二维数组,可以用 volist 标签直接循环输出.对于多维数组,则需要对其中的数组成员再次使用 ...
- php 模板volist 遍历,thinkphp模板volist标签嵌套循环输出多维数组
volist 嵌套使用一般的二维数组,可以用 volist 标签直接循环输出.对于多维数组,则需要对其中的数组成员再次使用 volist 标签嵌套循环输出. 构建一个多维数组:$food = arra ...
- html中使用volist要引入什么,thinkphp中volist标签使用案例详解
这次给大家带来thinkphp中volist标签使用案例详解,thinkphp中volist标签使用的注意事项有哪些,下面就是实战案例,一起来看一下. 属性: name(必须):要输出的数据模板变量 ...
- thinkphp ajax volist,thinkphp中的volist标签在ajax中操作详解
在一个ThinkPHP的复杂页面(包含volist)中实现volist标签显示Jquery查询结果的返回.本文主要和大家介绍thinkphp 中的volist标签在ajax操作中的特殊性(推荐),需要 ...
- php 页面显示volist,thinkphp 中的volist标签在ajax操作中的特殊性
背景 在一个Thinkphp的复杂页面(包含volist)中实现volist标签显示jquery查询结果的返回 知识点 使用ajax的目的是不刷新整个页面的前提下实现部分表格数据的刷新,但是注意Thi ...
最新文章
- cmd导入oracle库文件,cmd 导入oracle数据库
- No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer解决方法
- poj 2078(搜索+剪枝)
- 生活中要常常鼓励别人
- w10电脑c盘满了怎么清理_Win10专业版电脑c盘满了怎么清理?教你一招快速清理C盘...
- 在QtCreator中手动添加signal和slot
- mysql中联合查询
- 键、索引、约束及其区别
- NNACL2021 放榜啦~
- 378.有序矩阵中第k小的元素(力扣leetcode) 博主可答疑该问题
- Python爬虫教程,利用Python采集QQ群成员信息
- Xshell“所选的用户密钥未在远程主机上注册”解决办法
- 【绝知此事要躬行】线性表之链表OJ(下)
- aws lambda_AWS Lambda和Node JS的路由管理框架
- 腾讯云从良心云转变成“凉心云”,乱封禁服务器与域名怎么办?
- 大话西游手游服务器合服信息查询,大话西游手游2021年6月合区查询 6月最新合区列表...
- 目标检测难题 | 小目标检测策略汇总
- 序 -- 慕司板IAP15
- Linux下性能监控、守护进程与计划任务管理
- 英雄联盟英雄信息【python爬虫】
热门文章
- -- 18.查询各科成绩最高分、最低分和平均分:以如下形式显示:课程ID,课程name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率 -- 及格为>=60,中等为:70-80,优良为:80-
- python3常用模块(chardet)
- 复制html到word文档出现边框的解决方案
- python3 manage.py makemigrations执行完无反应的解决办法
- 如何在Windows 10上查看哪些应用正在使用您的麦克风
- js禁止苹果页面底部滚动_Vue.js 实现禁止 h5 页面在 ios 浏览器内置的下拉 bounce 效果...
- netty权威指南第一章
- 在windows下IIS管理器,网站报401.2错误解决办法
- swift 将json字符串 转换成 字典
- 16,verilog之锁存器和触发器