這篇文章主要介紹了Yii CFileCache 獲取不到值的原因分析,非常不錯,具有參考借鑒價值,需要的朋友參考下
我在配置文件裡面配置了
‘cache'=>array( ‘class'=>'system.caching.CFileCache', ),
在控制器內設定了
return array( array( ‘COutputCache+pro', ‘duration'=>86400, ‘varyByParam'=>array(‘id'), ),
然後開啟了資料庫'schemaCachingDuration'= >3600,
初次使用是有快取檔案的而且發現確實加快不少存取速度
但時間一長在某個時間段也許是10分鐘後我就發現runtime/cache 下面的快取檔案突然就沒了
不清楚是什麼原因追蹤了好長時間才發現這個問題
另外還發現快取目錄裡面還有資料夾什麼0a d6 63 3a命名的不知道這是起什麼作用的
在線等快取檔案突然沒了的原因?
快取檔案在D碟資料空間是很大的
一、yii的緩衝需要在main.php裡面配置,
/****************/ ‘cache' => array ( ‘class' => ‘system.caching.CFileCache' )
配置完成以後只要在控制器裡面… .
Yii::app ()->cache->set($key,$value,$expire); Yii::app ()->cache->get($key);
二、配置多種快取
##main.php 的設定‘cache' => array ( ‘class' => ‘system.caching.CFileCache' ), ‘dbcache' => array ( ‘class' => ‘system.caching.CDbCache' )
Yii::app ()->dbcache
三、頁面緩衝也就是把整個頁面靜態化
main.php配置還是一樣控制器:可以使用COutputCache類別作為一個我們控制器類別中的一個行為過濾器。public function filters() { return array ( array ( ‘COutputCache', ‘duration' => 600, ‘ varyByParam' => array(‘id') ) ); }
#四、片段快取
片段快取用來快取一個頁面的一部分。我們可以在view腳本中使用片段快取。我們透過使用CController::beginCache()和CController::endCache()方法來實作。…some HTML content… <?php if($this—>beginCache($key))?> …content to be cached… <?php $this—>endCache(); ?> …other HTML content…
以上是對於Yii CFileCache 取得不到值的原因分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!