1、vilist标签
volist标签是一对功能强大,利用方便的数据循环标签,它支持多维数组或一维数组的循环。由于它随意马虎利用,并且语法灵巧,以是在ThinkPHP模版中该标签比较常见。volist标签被模版引擎阐明后将转换成foreach()...endforeach语句。一条大略的volist标签语句格式如下代码所示。
如上代码所示,数据源支持PHP所有数组(不支持工具),临时变量名称可以自定义,该变量名决定了在循环体中可以利用的数组名称。为了方便演示,这里将在掌握器index动作中定义个多维数组,如下代码所示

上述代码定义了1个数组,并定义了3条数据。在index.html中可以利用volist标签将数组数据循环输出代码如下所示
如上述代码所示,list为数组变量,该变量由index动作分配。在标签中直接引用变量只须要变量名即可,不须要定界符和”$\公众符号。$vo是一个临时变量(由volist标签id值指定),所有等待循环的数据都被存放在该变量中,$vo.user_name表示输出数组中的user_name键对应值,读者还可以像传统的PHP那样写成$vo[‘user_name']。
在实际运用中,一样平常只须要利用volist标签的name和id属性即可完成大多数的数据循环。ThinkPHP为了能够使volist标签更佳灵巧,还供应了其余一些实用的可选属性,,这些属性如下
● offset:起始数据序列
● length:数据结束序列
● key:数据循环式的临时变量,相称于从0开始的索引号,默认变量名为i。
● mod:对key值取模
● empty:当那么数组为空时显示的字符串信息
offset和length合营利用能够实现大略的数据分页功能,如果数组信息过多,可以利用offset和length分片输出,如以下代码所示
上述代码标志只循环索引号2~5之间的数据,利用offset和length属性,可以方便地掌握页面中的局部数据。
2、foreach标签
foreach标签是volist标签的简化版,利用办法一样,最终生成的PHP代码也一样,唯一不同的便是foreach标签不支持volist中可选属性(只支持key)。其余,foreach不仅可以循环PHP数组,还可以循环工具。foreach的临时变量利用item代替volist中的id。如下代码所示
3、for标签
for标签也是一种可以实现数据循环的标签,最终生成的嗲吗便是PHP中的for语句块。无论是简洁性、易用性还是程序的运行速率都不及volist、foreach标签。但for标签不仅可以循环数组,还可以循环普通的PHP变量、函数等,常用在局部统计、更新等场合。for标签格式如下
一条大略的for标签语句只须要开始值和结束值即可,这些变量值都支持模版或者掌握器动作中的变量值,如下代码所示
在for标签中利用变量与volist、foreach标签不同,在for标签中利用变量必须在变量名称上加上\"大众$\公众,并且变量不支持“|”函数引用符号。for标签可选属性如下
● comparison:start和end的条件,默认为lt(小于)。常用的有elt(即是活小于)、eq(即是)。
●step:步进条数
●name:循环时变量名,默认为i。