插件窝 干货文章 详解thinkphp6循环的两种方式

详解thinkphp6循环的两种方式

amp class 39 foreach 741    来源:    2024-10-27

thinkphp6中有两个可以实现数组循环的标签(volist标签和foreach标签),下面跟着小编一起去看看这两个标签的用处吧。

第一种:volist标签

语法:

{volist name="" id="" key="" offset="" length=""}
    循环体
{/volist}

其中:

立即学习“PHP免费学习笔记(深入)”;

  • name:当前模板的变量名称;

  • id:当前的循环变量;

  • key:下标,默认从1开始;

  • offset:开始的行数;

  • length:获取的行数。

实例:

定义数组:

<?php
namespace app\controller;
use think\facade\View;
class Test{
    public function index(){
        $arr=[
            [&#39;id&#39;=>1,&#39;name&#39;=>&#39;cmcc&#39;
            ],[&#39;id&#39;=>2,&#39;name&#39;=>&#39;cctv&#39;
            ],[&#39;id&#39;=>1,&#39;name&#39;=>&#39;cmqq&#39;
            ]
        ];
        view::assign(&#39;arr&#39;,$arr);
        return view::fetch();
    }
}
?>

在模板中遍历:

{volist name="arr" id="vv" key="kk" offset="1" length="1"}
    <div>
        {$kk} --- {$vv[&#39;name&#39;]}
    </div>
    {/volist}

输出结果:

KB{[NE0@{_CKKEZ$PFJEC97.png

我们设置从1开始截,截取一个,所以输出结果为cctv。

第二种:foreach标签

语法:

{foreach $name as $key=>$id}
        循环体
    {/foreach}

其中:

立即学习“PHP免费学习笔记(深入)”;

  • name:当前模板的变量名称;

  • id:当前的循环变量;

  • key:下标,默认从0开始。

实例:

foreach的定义数组与volist的相同,这里就不再写了,我们直接看在模板中遍历。

{foreach $arr as $k=>$v}
        <div>
            {$k} --- {$v[&#39;name&#39;]}
        </div>
    {/foreach}

输出结果为:

CX{$0PZ%UNK%{1XUWS2~~{Q.png

我们可以看到foreach标签在循环的时候需要加上$(美元符号),而volist标签再循环的时候不需要加上$(美元符号)。

推荐学习:

thinkphp6视频教程

最新的10个thinkphp视频教程