tags:

views:

925

answers:

2

I was wondering if it was possible to assign an array to a variable within a Smarty template file? I have tried this

{assign var='file' value = array('dir','doc','exe')}

But when I print out the array it produces this:

array(\'dir\',\'doc\',\'exe\') 

How can I stop Smarty escaping the array values?

Thanks in advance

A: 
{php}
  $this->assign("array", array('dir','doc','exe'));
{/php}

{foreach from=$array item=item}
  {$item}
{/foreach}
Kirzilla
+1  A: 

I just found another answer here that allows you to do this without the use of {php} tags (recommended by Smarty)

{assign var='icon' value=','|explode:"dir,doc,exe"}

still open to more ideas though...

Jenski
this method do not allow to assign associative array
Kirzilla
+1 - thanks. This was exactly what we needed to address an issue in our hacky third-party CMS.
Mike