TP5中volist嵌套时里层volist获取外层 volist循环的key

情景:tp5.0框架,有时我们需要在第二层volist,获取第一层的volist的key的值,如何获取呢?应该不少的朋友都不知怎么获取吧。

TP5中有两个嵌套的volist循环,采用的是关联数组,怎样在循环内部分别获取外层volist的Key和内层volist的key值?

解决方法:在tp5中的ASSIGN标签

ASSIGN标签用于在模板文件中定义变量

{volist name='$data' id='user' key='k'}
    {assign name="etype" value="$key" /}
    {volist name='user' id='u'}
        <tr>
            <td> {$u.user_id} </td>
            <td> {$u.name} </td>
            <td> 
                {volist name="user_type" id="ut"}
                    {eq name="u.type" value="$key"}{$ut}
                    {/eq}
                {/volist}
            </td>
            <td>
                <a href="{:url('index/exam/exam',['id'=>$exam.id])}">用户</a>
            </td>
        </tr>
    {/volist}
{/volist}

通过ASSIGN标签定义了一个模板变量etype,值为外层volist数组中的原始key。在内层volist中通过$type即可调用,需要区别的是内层中的$key实际上是内层volist的数组原始key。

以上的思路有点像赋值起来,给后者使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章