smarty 緩存控制前的頁(yè)面靜態(tài)化原理
更新時(shí)間:2013年03月15日 12:23:22 作者:
在配置文件中我們應(yīng)設(shè)置了緩存的目錄,但是緩存的只有一個(gè)文件,怎么讓一個(gè)模版有多個(gè)緩存文件呢
可在display中進(jìn)行設(shè)置
$smarty->display("demo.tpl",$_SERVER[REQUEST_URI])來(lái)實(shí)現(xiàn)一個(gè)模版有多個(gè)緩存。
既然文件已經(jīng)有緩存了,我們就可以走緩存文件了,不用循環(huán)的執(zhí)行連接數(shù)據(jù)庫(kù),進(jìn)行查詢了。用smatry中的一個(gè)函數(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)行緩存的例如:用戶的登錄,和文章的評(píng)論部分就不需要緩存的,那么我們這樣解決
1,在php文件里,如果不需要緩存的數(shù)據(jù) 要放到iscached判斷之外。
2.在模版中如果不需要緩存的部分就放到<{nocache}>........<{/nocache}>之間。
$smarty->display("demo.tpl",$_SERVER[REQUEST_URI])來(lái)實(shí)現(xiàn)一個(gè)模版有多個(gè)緩存。
既然文件已經(jīng)有緩存了,我們就可以走緩存文件了,不用循環(huán)的執(zhí)行連接數(shù)據(jù)庫(kù),進(jìn)行查詢了。用smatry中的一個(gè)函數(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)行緩存的例如:用戶的登錄,和文章的評(píng)論部分就不需要緩存的,那么我們這樣解決
1,在php文件里,如果不需要緩存的數(shù)據(jù) 要放到iscached判斷之外。
2.在模版中如果不需要緩存的部分就放到<{nocache}>........<{/nocache}>之間。
相關(guān)文章
php中用foreach來(lái)操作數(shù)組的代碼
php中用foreach來(lái)操作數(shù)組的代碼,需要的朋友可以參考下。2011-07-07
php使用redis的幾種常見(jiàn)操作方式和用法示例
這篇文章主要介紹了php使用redis的幾種常見(jiàn)操作方式和用法,結(jié)合實(shí)例形式總結(jié)分析了PHP使用redis實(shí)現(xiàn)字符串緩存、隊(duì)列模擬、樂(lè)觀鎖與悲觀鎖實(shí)現(xiàn)、發(fā)布和訂閱等相關(guān)操作技巧,需要的朋友可以參考下2020-02-02
PHP使用imagick擴(kuò)展實(shí)現(xiàn)合并圖像的方法
這篇文章主要介紹了PHP使用imagick擴(kuò)展實(shí)現(xiàn)合并圖像的方法,結(jié)合實(shí)例形式分析了php基于imagick擴(kuò)展處理圖片的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
php中使用Imagick實(shí)現(xiàn)圖像直方圖的實(shí)現(xiàn)代碼
玩過(guò)單反相機(jī)的人應(yīng)該都知道圖像直方圖(Image Histogram),簡(jiǎn)單點(diǎn)說(shuō),它通過(guò)計(jì)算每個(gè)色階在總像素中所占的比例來(lái)反映圖像的曝光情況。2011-08-08

