eval函數
eval函數
如果指定了"assign" 這個特殊屬性,函數的輸出值將被賦給由assign 指定的模板變量,而不是直接輸出.
技術要點: 待求值處理的變數被當作模板來處理. 它們和模板一樣遵循同樣的結構和安全特性.
技術要點: 待求值處理的變數每次調用時被重編譯,不保存編譯版本! 但當打開緩衝設定時,該輸出會被其它模板緩衝.
#test.php:
$smarty->assign('data',array(1,2,3));
#test.html:
{section name=rows loop=$data}
<tr class="{cycle values="odd,even"}">
<td>{$data[rows]}</td> ;
</tr>
{/section}
#輸出:##<tr class="odd" >
<td>1</td>
</tr>
<tr class="even">
<td>2</td>
# <td>2</td>
# </tr>
<tr class="odd">
<td>3</td>
</tr>