Переменные шаблона начинаются со знака $доллара. Они могут состоять из цифр,
букв, знаков подчёркивания - как и обычные
PHP variable.
Вы можете обращаться к массивам по числовым и нечисловым индексам.
Вы также можете обращаться к свойствам и методам объектов.
Переменные конфигурационного файла
- это исключения из долларового синтаксиса; к ним можно обращаться, окружив
их #решетками# или воспользовавшись специальной переменной
$smarty.config
.
Пример 3.2. Переменные
{$foo} <-- отображение простой переменной (не массив и не объект) {$foo[4]} <-- отображает 5-й элемент числового массива {$foo.bar} <-- отображает значение ключа "bar" ассоциативного массива, подобно PHP $foo['bar'] {$foo.$bar} <-- отображает значение переменного ключа массива, подобно PHP $foo[$bar] {$foo->bar} <-- отображает свойство "bar" объекта {$foo->bar()} <-- отображает возвращаемое значение метода "bar" объекта {#foo#} <-- отображает переменную "foo" конфигурационного файла {$smarty.config.foo} <-- синоним для {#foo#} {$foo[bar]} <-- синтаксис доступен только в цикле section, см. {section} {assign var=foo value='baa'}{$foo} <-- отображает "baa", см. {assign} Также доступно множество других комбинаций {$foo.bar.baz} {$foo.$bar.$baz} {$foo[4].baz} {$foo[4].$baz} {$foo.bar.baz[4]} {$foo->bar($baz,2,$bar)} <-- передача параметра {"foo"} <-- статические значения также разрешены {* отображает серверную переменную "SERVER_NAME" ($_SERVER['SERVER_NAME'])*} {$smarty.server.SERVER_NAME}
Переменные запроса, такие как $_GET
,
$_SESSION
и т.д. доступны через зарезервированную
переменную
$smarty
.
См. также
$smarty
,
Переменные файлов конфигурации,
{assign}
и
assign()
.