三、 法
l assign :為範本分配變數
l assignByRef :為模板分配變數 (依引用傳遞)
l append :追加模板變數到一個陣列中
l appendByRef :追加模板變數到一個陣列中 (按引用傳遞)
l clearAllAssign
清除所有已賦值變數
l clearCache
清除快取
l configLoad 載入設定檔
在smarty中,載入設定檔兩種方法:
1)在模板中 {config_load file=’….’}
2)在程式中 $smarty->configLoad($file[,$section])
l clearConfig
清除所有設定檔變數
l display
讀取、替換、輸出
l fetch
讀取、替換、回傳
l templateExists :判斷模板是否存在
嘗試載入一個不存在的範本會報錯,在顯示之前應該判斷
assign和assignByRef的差別:
Display和fetch的區別:
四、 過濾器
過濾器就是用來過濾資料
1、過濾器的種類:
1)預過濾器 Prefilters
2)後濾網 Postfilters
3)輸出過濾器 Output Filters
依觸發時間的不同,分割出以上三種過濾器
2、工作流程
tpl原始檔 =〉Prefilter =〉編譯tpl檔 => Postfilter =>儲存到磁碟=> 編譯過的php檔案執行=〉Output Filters(=〉如果有smarty cache的話,Output Filters的內容會快取) =>結果輸出。
3、註冊過濾器
在Smarty中,過濾器在使用前必須註冊
在2.6中,註冊過濾器
l Prefilters
$smarty->register_prefilter(“func”);
l Postfilters
$smarty->register_postfilter(“func”);
l Output Filters
$smarty->register_outputfilter(“func”);
註冊不同的過濾器呼叫不同的方法。
3.0中,註冊過濾器
$smarty->registerFilter($type, $callback);
$type:過濾器類型
值值範圍:
Pre:預濾心
Post:後過濾器
Output :輸出濾網
$callback:濾波器函數
4、代碼:
預過濾和後過濾器第一次編譯時會執行,或是模板改變後會再次執行
輸出過濾器每次都會執行
以上就介紹了php—Smarty-7(24),包含了方面的內容,希望對PHP教程有興趣的朋友有幫助。