我們往往需要對模闆輸出變量使用函數,可以使用:
{$data.name|md5}
編譯後的結果是:
<?php echo (md5($data['name'])); ?>
如果函數有多個參數需要調用,則使用:
{$create_time|date="y-m-d",###}
表示date函數傳入兩個參數,每個參數用逗号分割,這裡第一個參數是y-m-d,第二個參數是前面要輸出的create_time變量,因為該變量是第二個參數,是以需要用###辨別變量位置,編譯後的結果是:
<?php echo (date("y-m-d",$create_time)); ?>
如果前面輸出的變量在後面定義的函數的第一個參數,則可以直接使用:
{$data.name|substr=0,3}
表示輸出
<?php echo (substr($data['name'],0,3)); ?>
雖然也可以使用:
{$data.name|substr=###,0,3}
但完全沒用這個必要。
還可以支援多個函數過濾,多個函數之間用“|”分割即可,例如:
{$name|md5|strtoupper|substr=0,3}
<?php echo (substr(strtoupper(md5($name)),0,3)); ?>
函數會按照從左到右的順序依次調用。
如果你覺得這樣寫起來比較麻煩,也可以直接這樣寫:
{:substr(strtoupper(md5($name)),0,3)}