在TP5中有两个嵌套的volist循环,采用的是关联数组,怎样在循环内部分别获取外层volist的Key和内层volist的key值?
解决方法:采用tp5中的ASSIGN标签即可,ASSIGN标签用于在模板文件中定义变量,具体用法如下:
1
|
{volist name='$list' id='user' key='k'} {assign name="etype" value="$key" /} {volist name='user' id='u'}
{$u.id} | {$u.name} | {$u.department_id} | {volist name="Think.config.USER_TYPE_LIST" id="utl"}{eq name="u.type" value="$key"}{$utl}{/eq}{/volist} | 评分 | |
上述代码中,通过ASSIGN标签定义了一个模板变量etype,值为外层volist数组中的原始key。在内层volist中通过$type即可调用,需要区别的是内层中的$key实际上是内层volist的数组原始key。
这样就可以在循环内部分别获取外层volist的Key和内层volist的key值