Dwoo模板引擎中的{with}和{loop}插件更改变量名称解析的默认上下文。在Smarty 3或更早版本中是否有类似Dwoo-s {with}或{loop}的东西?
如果Dwoo你喂模板:
{$arr.foo}
{with $arr} {$foo}/{$arr.foo} {/with}
数据:
array('arr' => array('foo' => 'bar'))
它会输出:
bar
bar/
因为第二{$ arr.foo}实际上意味着{ $ arr.arr.foo}在全局上下文中。
你知道我该如何在Smarty中获得类似的效果?
有没有一些builit在功能或第三方插件,可能让我有这个?
你知道如何构建这样一个插件,如果它不存在?
Dwoo中的{loop}是{foreach}和{with}的组合。如果Smarty 3中没有{with},那么也没有{loop}。 – 2010-10-20 08:45:09
在Smarty中,你只需要foreach(现在),就像上面一样。你有没有尝试过的代码? – JochenJung 2010-10-20 09:17:51
我知道这段代码有效,但它迫使我发明变量的名字来保存当前元素,并迫使我通过该变量访问这个元素。请看看我关于同样的事情的其他问题,看看我在说什么:http://stackoverflow.com/questions/3942034/do-you-know-of-any-popular-php-template-engines-对于-PHP-是具备的,概念的,CURR – 2010-10-20 23:21:42