Я задавался вопросом, было ли возможно присвоить массив переменной в файле шаблона Smarty? Я попробовал это
{assign var='file' value = array('dir','doc','exe')}
Но когда я распечатываю массив, он производит это:
array(\'dir\',\'doc\',\'exe\')
Как я могу остановить Присяжного острослова, выходящего из значений массива?
Заранее спасибо
{php}
$this->assign("array", array('dir','doc','exe'));
{/php}
{foreach from=$array item=item}
{$item}
{/foreach}
С Smarty v.3 доступен новый синтаксис
{$array = ['item1','item2',$item3]}
см. подробнее : http://www.smarty.net/docs/en/language.syntax.variables.tpl
Я только что нашел другой ответ здесь, который позволяет сделать это без использования {php} тегов (рекомендованных Smarty)
{assign var='icon' value=','|explode:"dir,doc,exe"}
все еще открыт для других идей...