修改ThinkPHP快取為Memcache的方法

2022-10-06 07:15:11 字數 939 閱讀 4291

一般來說,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...