Функции

Каждый тэг Smarty либо выводит значение переменной, либо вызывает некоторую функцию. Они обрабатываются путём заключения функции и ее параметров в разделители, например: {funcname attr1='val1' attr2='val2'}.

Example 3.3. Синтаксис функций


{config_load file='colors.conf'}

{include file='header.tpl'}
{insert file='banner_ads.tpl' title='Smarty - это круто'}

{if $logged_in}
    Welcome, <font color="{#fontColor#}">{$name}!</font>
{else}
    Hi, {$name}!
{/if}

{include file='footer.tpl' ad=$random_id}

   

  • И встроенные, и пользовательские функции используются с одинаковым синтаксисом.

  • Встроенные функции обеспечивают внутреннюю работу Smarty, например {if}, {section} и {strip}. У вас не должно быть причин для их модификации.

  • Пользовательские функции являются дополнительными и реализуются через плагины. Они могут быть изменены по вашему желанию, также вы можете создать новые. Примерами пользовательских функций могут быть {html_options} и {popup}.

См. также register_function()