Smarty: строковая переменная содержит скобки

У меня есть ассоциативный массив, назначенный переменной Smarty, что-то вроде этого:

$foo = array('my[content][hello]' => 'hello', 'my[content][goodbye]' => 'goodbye', ...

В файле шаблона, как получить доступ hello? Это не удается:

{$foo.my[content][hello]}

Я думаю, что это не удается, потому что квадратные скобки означают, что я пытаюсь получить доступ к частям массива. В этом случае я не. Скобки являются лишь частью имени переменной. Мысли?

1 ответ

Решение

Пытаться

{$foo.{'my[content][hello]'}}

или же

{$foo['my[content][hello]']}

или (если все остальное терпит неудачу [имеется в виду, что вы все еще на Smarty2]):

{assign var=key value='my[content][hello]'}
{$foo.$key}
Другие вопросы по тегам