Есть ли что-то вроде Dwoo-s {with} или {loop} в Smarty 3 или раньше?

{with} и ​​{loop} в Dwoo template engine изменяют контекст по умолчанию для разрешения имен переменных.

Если в Dwoo вы подаете шаблон:

{$arr.foo} {with $arr} {$foo} / {$arr.foo} {/with} 

с данными:

 array('arr' => array( 'foo' => 'bar' )) 

он будет выводить:

 bar bar / 

потому что второй {$ arr.foo} на самом деле означает {$ arr.arr.foo} в глобальном контексте.

Вы знаете, как я могу добиться подобного эффекта в Smarty?

Есть ли какие-то функции в функциональности или плагины сторонних разработчиков, которые могут позволить мне это?

Вы не знаете, как создать такой плагин, если он не существует?

Related of "Есть ли что-то вроде Dwoo-s {with} или {loop} в Smarty 3 или раньше?"

У вас есть foreach для достижения loop :

 {foreach from=$arr item=foo} <li>{$foo}</li> {/foreach} 

Если вы, однако, ищете замену, я боюсь, что в Smarty нет подобной команды.

Насколько мне известно, вы не можете добиться этого эффекта в Smarty 3 или ранее.