《PHP應(yīng)用:Yii CFileCache 獲取不到值的原因分析》要點:
本文介紹了PHP應(yīng)用:Yii CFileCache 獲取不到值的原因分析,希望對您有用。如果有疑問,可以聯(lián)系我們。
相關(guān)主題:YII框架
我在配置文件里面配置了PHP學(xué)習(xí)
‘cache'=>array( ‘class'=>'system.caching.CFileCache', ),
在控制器里面設(shè)置了PHP學(xué)習(xí)
return array( array( ‘COutputCache+pro', ‘duration'=>86400, ‘varyByParam'=>array(‘id'), ),
然后開啟了數(shù)據(jù)庫 ‘schemaCachingDuration'=>3600,
PHP學(xué)習(xí)
初次使用是有緩存文件的 而且發(fā)現(xiàn) 確實加快不少訪問速度PHP學(xué)習(xí)
但時間一長 在某個時間段 也許是10分鐘后 我就發(fā)現(xiàn) runtime/cache 下面的緩存文件突然就沒了PHP學(xué)習(xí)
不清楚是什么原因 跟蹤了好長時間才發(fā)現(xiàn)這個問題PHP學(xué)習(xí)
另外還發(fā)現(xiàn)緩存目錄里面還有 文件夾 什么0a d6 63 3a命名的 不知道這是起什么作用的PHP學(xué)習(xí)
在線等緩存文件突然沒了的原因?PHP學(xué)習(xí)
緩存文件在D盤 數(shù)據(jù)空間是很大的PHP學(xué)習(xí)
一、yii的緩沖需要在main.php里面配置,PHP學(xué)習(xí)
/****************/ ‘cache' => array ( ‘class' => ‘system.caching.CFileCache' )
配置完成以后只需在控制器里面….PHP學(xué)習(xí)
Yii::app ()->cache->set($key,$value,$expire); Yii::app ()->cache->get($key);
二、配置多種緩存PHP學(xué)習(xí)
main.php 的配置PHP學(xué)習(xí)
‘cache' => array ( ‘class' => ‘system.caching.CFileCache' ), ‘dbcache' => array ( ‘class' => ‘system.caching.CDbCache' )
控制器只需用相應(yīng)的cacheid調(diào)用就好PHP學(xué)習(xí)
如:Yii::app ()->dbcache
PHP學(xué)習(xí)
三、頁面緩沖也就是把整個頁面靜態(tài)化PHP學(xué)習(xí)
main.php配置還是一樣PHP學(xué)習(xí)
控制器:可以使用COutputCache類作為一個我們控制器類中的一個行為過濾器.PHP學(xué)習(xí)
public function filters() { return array ( array ( ‘COutputCache', ‘duration' => 600, ‘ varyByParam' => array(‘id') ) ); }
COutputCache來緩存數(shù)據(jù)時,來作為自動生成key名字的策略.下面是可以使用的一個列表:PHP學(xué)習(xí)
varyByRoute:通過將該選項設(shè)置為true,具體請求的路由部分將會作為獨立標(biāo)識符的一部分用于生成緩存數(shù)據(jù).所以,你可以使用請求controller和acion的組合來區(qū)別緩存內(nèi)容.PHP學(xué)習(xí)
varyBySession:通過設(shè)置該選項為true,將使用唯一的session id來區(qū)分緩存中的內(nèi)容.每個用戶的session都是不同的,但是可以用來為緩存服務(wù).PHP學(xué)習(xí)
varyByParam:如前面所說,這里是用輸入的GET中的參數(shù)來區(qū)分緩存內(nèi)容.PHP學(xué)習(xí)
varyByExpression:給該選項設(shè)置PHP表達式,我們可以使用相應(yīng)表達式的結(jié)果來區(qū)分緩存的內(nèi)容.PHP學(xué)習(xí)
還有要注意的是 COutputCache默認(rèn)的cacheid是cachePHP學(xué)習(xí)
四、片段緩存PHP學(xué)習(xí)
片段緩存用來緩存一個頁面的一部分.我們可以在view腳本中使用片段緩存.我們通過使用CController::beginCache()和CController::endCache()方法來實現(xiàn).PHP學(xué)習(xí)
…some HTML content… <?php if($this―>beginCache($key))?> …content to be cached… <?php $this―>endCache(); ?> …other HTML content…
以上所述是小編給大家介紹的Yii CFileCache 獲取不到值的原因分析,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的.在此也非常感謝大家對維易PHP網(wǎng)站的支持!PHP學(xué)習(xí)
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/1846.html