每个Smarty标记要么打印一个变量要么调用所谓函数。函数的调用和显示是通过将函数和它的属性包含在分隔符中实现的,形如:{funcname attr1='val1' attr2='val2'}。
例子3-3. 函数语法
{config_load file='colors.conf'} {include file='header.tpl'} {insert file='banner_ads.tpl' title='Smarty is cool'} {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()。