• 技术文章 >php框架 >ThinkPHP

    ThinkPHP中循环遍历的两种方法(volist和foreach标签)

    藏色散人藏色散人2020-01-22 14:12:45转载2198

    在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>

    输出展示:

    0dc0f83a8180c65f43f3208f52f0cf4.png

    案例二:

    二维数组的遍历

    <?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>

    输出展示:

    7c3a99e5bbc4a1dd2372b51cfc2aa6b.png

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

    以上就是ThinkPHP中循环遍历的两种方法(volist和foreach标签)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除
    专题推荐:ThinkPHP
    上一篇:ThinkPHP5+jQuery+MySql实现投票功能的方法 下一篇:ThinkPHP5动态生成图片缩略图的方法详解
    线上培训班

    相关文章推荐

    • workerman+thinkphp制作简易聊天室• thinkphp6 任意文件创建漏洞复现• ThinkPHP6 任意文件操作漏洞分析• ThinkPHP5+jQuery+MySql实现投票功能的方法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网