smarty 緩存控制前的頁面靜態(tài)化原理
更新時間:2013年03月15日 12:23:22 作者:
在配置文件中我們應(yīng)設(shè)置了緩存的目錄,但是緩存的只有一個文件,怎么讓一個模版有多個緩存文件呢
可在display中進(jìn)行設(shè)置
$smarty->display("demo.tpl",$_SERVER[REQUEST_URI])來實現(xiàn)一個模版有多個緩存。
既然文件已經(jīng)有緩存了,我們就可以走緩存文件了,不用循環(huán)的執(zhí)行連接數(shù)據(jù)庫,進(jìn)行查詢了。用smatry中的一個函數(shù)進(jìn)行判斷
$smarty->iscached(demo.tpl"",",$_SERVER[REQUEST_URI])默認(rèn)值為”true“ 這里的模版要和display的一樣。
在smarty3和在smarty2中是有區(qū)別的
$smarty->is_cached(demo.tpl"",",$_SERVER[REQUEST_URI]) smarty2
$smarty->iscached(demo.tpl"",",$_SERVER[REQUEST_UR]I) smarty3
但是在模版中有部分是不需要進(jìn)行緩存的例如:用戶的登錄,和文章的評論部分就不需要緩存的,那么我們這樣解決
1,在php文件里,如果不需要緩存的數(shù)據(jù) 要放到iscached判斷之外。
2.在模版中如果不需要緩存的部分就放到<{nocache}>........<{/nocache}>之間。
$smarty->display("demo.tpl",$_SERVER[REQUEST_URI])來實現(xiàn)一個模版有多個緩存。
既然文件已經(jīng)有緩存了,我們就可以走緩存文件了,不用循環(huán)的執(zhí)行連接數(shù)據(jù)庫,進(jìn)行查詢了。用smatry中的一個函數(shù)進(jìn)行判斷
$smarty->iscached(demo.tpl"",",$_SERVER[REQUEST_URI])默認(rèn)值為”true“ 這里的模版要和display的一樣。
在smarty3和在smarty2中是有區(qū)別的
$smarty->is_cached(demo.tpl"",",$_SERVER[REQUEST_URI]) smarty2
$smarty->iscached(demo.tpl"",",$_SERVER[REQUEST_UR]I) smarty3
但是在模版中有部分是不需要進(jìn)行緩存的例如:用戶的登錄,和文章的評論部分就不需要緩存的,那么我們這樣解決
1,在php文件里,如果不需要緩存的數(shù)據(jù) 要放到iscached判斷之外。
2.在模版中如果不需要緩存的部分就放到<{nocache}>........<{/nocache}>之間。
相關(guān)文章
PHP中CURL的CURLOPT_POSTFIELDS參數(shù)使用細(xì)節(jié)
CURL確實是一個不錯的好工具,不僅在PHP中還是其他的操作系統(tǒng)中,都是一個非常好用的。但是如果你有些參數(shù)沒有用好的話,那可能會得不到自己理想中的結(jié)果2014-03-03PHP中使用glob函數(shù)實現(xiàn)一句話刪除某個目錄下的所有文件
這篇文章主要介紹了PHP中使用glob函數(shù)實現(xiàn)一句話刪除某個目錄下的所有文件,重點在glob函數(shù)的使用上,需要的朋友可以參考下2014-07-07解析PHP跳出循環(huán)的方法以及continue、break、exit的區(qū)別介紹
本篇文章是對PHP跳出循環(huán)的方法以及continue、break、exit的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-07-07