当前位置: 代码迷 >> 综合 >> TP5中volist嵌套时里层volist获取外层 volist循环的key
  详细解决方案

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

热度:74   发布时间:2023-10-16 21:36:21.0

情景: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。

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

  相关解决方案