一般來說,thinkphp的預設快取方式是以file檔案方式實現的,執行時會在/runtime/temp 下生成很多的快取檔案。
有的情況下伺服器裝了memcached之後,需要將thinkphp的快取方式更改成memecache方式
具體操作步驟如下:
在conf/config.php 中新增:
'data_cache_type' => 'mem',
'memcache_host' => 'tcp:',
更新快取後重新整理頁面發現快取並沒有生效。
得到除錯資訊:
[ 2010-09-30t11:41:56+08:00 ] notic: [8] memcachepool::set(): server 127.0.0.1 (tcp 11211, udp 0) failed with: client_error bad command line format (0) cachememcache.class.php 第 107 行.
於是找到這句:
return $this->handler->setwww.cppcns.com($name, $value, 0, $expire);
進一步除錯之後發現 $expire 的值是-1; 寫程式的時候並沒有指定快取的時長,這裡的-1可能不被memcached接受。
於是在conf/config.php 中新增:
'data_cache_time' => 'fmuuoy3600',
指定預設的快取時長為3600 秒; 再執行,錯誤沒有了,快取成功!
另外,需要在某個action裡清除所有快取的時候可以這樣實現:
$cache = cache::getinstance();
$cache ->clear();
本文標題: 修改thinkphp快取為memcache的方法
本文位址: /wangluo/php/109951.html
J2ME中使用快取將螢幕內容儲存為Image
本文介紹如何將手機螢幕的內容儲存為image物件,這裡認為手機螢幕上顯示的是乙個canvas。完成這乙個功能的思想就是使用緩衝機制。我們不能直接獲得canvas上的畫素,因此不能直接從canvas上的內容獲得image物件。轉換一下思路,如果把要繪製的canvas上的內容首先繪製到乙個image上,...
thinkphp靜態快取
thinkphp裡面內建了乙個 靜態快取功能,說靜態快取可能對我這種菜鳥而言不太好理解。其實靜態快取就是將thinkphp的某乙個操作顯示出來的頁面生成乙個html檔案儲存在設 置的路徑,當使用者再次訪問的時候,如果快取沒過期,那麼這個操作將不再執行它下面的php程式,而是直接呼叫生成的html快取...
ThinkPHP 清理快取
首先我我們引入log,cache use think cache use think log 1 清除模版快取 不刪除cache目錄 public function clear sys cache 2 清除模版快取 不刪除 temp目錄 public function clear temp ahce...