模板中變量的數學計算
在模板中的變量不能爲其重新賦值,但是可以參與數學運算,只要在PHP腳本中可以執行的數學運算都可以直接應用到模板中。使用的示例如下所示:
- {$foo+1}
{* 在模板中將PHP中分配的變量加1 *} - {$foo*$bar}
{* 將兩個PHP中分配的變量在模板中相乘 *} - {$foo->bar-$bar[1]*$baz->foo->bar()-3*7}
{* PHP中分配的複合類型變量也可以參與計算 *} - {if ($foo+$bar.test%$baz*134232+10+$b+10)}
{* 可以將模板中的數學運算在程序邏輯中應用 *}
另外,在Smarty模板中可以識別嵌入在雙引號中的變量,只要此變量只包含數字、字母、下畫線或中括號[]。對於其他的符號(句號、對象相關的等)此變量必須用兩個反引號"`"(此符號和"~"在同一個鍵上)包住。使用的示例如下所示:
- {func var="test $foo test"}
{* 在雙引號中嵌入標量類型的變量 *} - {func var="test $foo[0] test"}
{* 將索引數組嵌入到模板的雙引號中 *} - {func var="test $foo[bar] test"}
{* 也可以將關聯數組嵌入到模板的雙引號中 *} - {func var="test `$foo.bar` test"}
{* 嵌入對象中的成員時將變量使用反引號包住*}