thinkphp 内置标签--循环
循环标签
1. foreach标签
foreach标签的用法和PHP语法非常接近,用于循环输出数组或者对象的属性,用法如下:

1)基本使用——数据源通过模板变量赋值
新建Index控制器,并新建index方法,在方法中获取数据并赋值到模板中

在index.html模板中用foreach循环输出数据

预览:

2)使用函数或者方法获取数据源
使用方法获取数据源
在index.html模板中使用函数或方法获取数据源,为了区分,换一个表查询,但注意此表要创建模型

预览:

使用函数获取数据源
在公共函数文件common.php文件中,新建getData函数,返回数据。

在index.html模板中使用函数获取数据源,并循环输出:

预览:

2. volist标签
volist标签通常用于查询数据集或者二维数组的结果输出。

1)基本使用
在Index控制器中,新建voshow方法,在方法中对模板进行赋值

在index.html模板中进行volist循环展示

预览:

2)函数设定数据集
可以直接使用函数设定数据集,而不需要在控制器中给模板变量赋值传入数据集变量,如:
在index.html模板中使用函数设定数据集:

访问Index控制器的voshow方法,预览:

3)输出部分数据——属性offset和length
支持输出查询结果中的部分数据,例如输出其中的第5~15条记录。
在index.html模板中使用属性offset与length输出部分数据

数据库中数据的ID不是连续的。预览:

注意:
1. offset为偏移量,从第几条数据开始;length输出的数据条数,两者功能类似于SQL语句中的limit。
4)输出偶数记录——属性mod
在index.html中,输出偶数记录:

预览:

mod属性还用于控制一定记录的换行,例如:
在index.html模板中使用mod属性控制换行。

预览:

注意:
1. mod属性为取模,即取余数,在volist中mod是行数(下标)除以mod取余数,行数从0开始。
5)数据源为空输出提示——empty
在Index控制器中新建emshow方法,为index.html模板分配空数据

在index.html模板中,使用empty属性,输出为空提示

预览:

empty属性还支持变量输出:
在Index控制器的emshow方法中赋值给模板变量

在index.html模板中输出

预览:

6)输出循环变量——key
在index.html模板中输出循环变量:

访问voshow方法,预览:

注意:
1. 如果没有指定key属性的话,默认使用循环变量i。
2. 循环变量值从1开始。
如果要输出数组的索引,可以直接使用key变量,和循环变量不同的是,这个key是由数据本身决定,而不是循环控制的。
在index.html模板中,输出数组索引key:

预览:

3. for标签

在Index控制器中,新建forshow方法:

在index.html模板中循环

解析后的代码为:

预览:

测试for循环的其他属性

预览:

 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号