视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
ThinkPHP中循环遍历的两种方法(volist和foreach标签)
2020-11-03 18:20:18 责编:小采
文档


在ThinkPHP中系统提供了两个标签来实现便利操作:volist标签和foreach标签。

volist语法格式:

<volist name='需要遍历的模板变量名' id='当前遍历到的元素名'
循环体
</volist>

注意:volist是双标签语句,需要闭合。

foreach语法格式:

<foreach name='需要遍历的模板变量名' item='当前遍历到的元素名'
循环体
</foreach>

注意:

foreach同样是双标签语句,需要闭合。

区别:

volist语法格式与foreach语法格式形式上大体相同,volist除了上述的name和id属性对之外,还支持更多的属性对,如mod、key、length等等,而foreach标签除了上述的name和item之外只支持key属性对。可以理解成foreach标签是volist标签的一个简化版本。

建议在实际操作时尽量使用volist标签。

案例一:

一维数组的遍历

<?php
...//创建控制器TestController省略
public function test(){
 $array = array('西游记','红楼梦','三国演义','水浒传');
 $array2 = array(
 array('孙悟空','猪八戒','沙和尚','唐僧'),
 array('贾宝玉','薛宝钗','刘姥姥','林黛玉'),
 array('刘备','关羽','张飞','曹操'),
 array('宋江','林冲','鲁智深','时迁')
 ); 
 $this -> assign('array',$array);
 
 $this -> display();
}
<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
 <volist name='array' id='vol'>
 {$vol} -
 </volist><hr/>
 
 <foreach name='array' item='for'>
 {$for} - 
 </foreach>
</body>
</html>

输出展示:

案例二:

二维数组的遍历

<?php
...创建TestController控制器 
public function test(){
 
 $array = array('西游记','红楼梦','三国演义','水浒传');
 $array2 = array(
 array('孙悟空','猪八戒','沙和尚','唐僧'),
 array('贾宝玉','薛宝钗','刘姥姥','林黛玉'),
 array('刘备','关羽','张飞','曹操'),
 array('宋江','林冲','鲁智深','时迁')
 );
 $this -> assign('array',$array);
 $this -> assign('array2',$array2);
 $this -> display();
 }
<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
/*volist循环遍历,嵌套循环*/
 <volist name='array2' id='vol'>
 <volist name='vol' id='vo'>
 {$vo}-
 </volist><br/>
 </volist><hr/>
/*foreach循环遍历,嵌套循环*/
<foreach name='array2' item='for'>
<foreach name='for' item='fo'>
 {$fo}-
</foreach><br/>
</foreach>
</body>
</html>

输出展示:

更多相关ThinkPHP知识,请访问ThinkPHP教程!

下载本文
显示全文
专题