{with}和{loop}插件更改了变量名称解析的默认上下文。
如果在Dwoo中你输入模板:
{$arr.foo}
{with $arr} {$foo} / {$arr.foo} {/with}
有数据:
array('arr' => array( 'foo' => 'bar' ))
它会输出:
bar
bar /
因为第二个{$ arr.foo}实际上在全局范围内意味着{$ arr.arr.foo}。
你知道我怎样才能在Smarty中达到类似的效果?
是否有一些功能或第三方插件可以让我拥有这个?
如果它不存在,您是否知道如何构建这样的插件?
答案 0 :(得分:0)
您已经预先实现了loop
:
{foreach from=$arr item=foo}
<li>{$foo}</li>
{/foreach}
如果你正在寻找with
的替代品,我担心Smarty中没有类似的命令。
答案 1 :(得分:0)
据我所知,你无法在Smarty 3或更早版本中实现这种效果。