修改ThinkPHP缓存为Memcache的方法


Posted in PHP onJune 25, 2014

一般来说,ThinkPHP的默认缓存方式是以File文件方式实现的,运行时会在/Runtime/Temp 下生成很多的缓存文件。
有的情况下服务器装了memcached之后,需要将ThinkPHP的缓存方式更改成memecache方式
具体操作步骤如下:

在Conf/config.php 中添加

'DATA_CACHE_TYPE' => 'Memcache', 
'MEMCACHE_HOST'  => 'tcp://127.0.0.1:11211',

更新缓存后刷新页面发现缓存并没有生效。
得到调试信息:

[ 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->set($name, $value, 0, $expire);

进一步调试之后发现 $expire 的值是-1; 写程序的时候并没有指定缓存的时长,这里的-1可能不被memcached接受。
于是在Conf/config.php 中添加:

'DATA_CACHE_TIME' => '3600',

指定默认的缓存时长为3600 秒; 再运行,错误没有了,缓存成功!

另外,需要在某个action里清除所有缓存的时候可以这样实现: 

$cache = Cache::getInstance(); 
$cache ->clear();
PHP 相关文章推荐
php下使用以下代码连接并测试
Apr 09 PHP
php 全文搜索和替换的实现代码
Jul 29 PHP
黑夜路人出的几道php笔试题
Aug 04 PHP
PHP中如何定义和使用常量
Feb 28 PHP
PHP采用curl模仿用户登陆新浪微博发微博的方法
Nov 07 PHP
php计算数组相同值出现次数的代码(array_count_values)
Jan 20 PHP
基于linnux+phantomjs实现生成图片格式的网页快照
Apr 15 PHP
php获取从百度、谷歌等搜索引擎进入网站关键词的方法
Jul 08 PHP
php轻松实现文件上传功能
Mar 03 PHP
Thinkphp单字母函数使用指南
May 08 PHP
php UNIX时间戳用法详解
Feb 16 PHP
laravel 实现用户登录注销并限制功能
Oct 24 PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
Jun 25 #PHP
ThinkPHP多表联合查询的常用方法
Mar 24 #PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
Jun 25 #PHP
ThinkPHP查询中的魔术方法简述
Jun 25 #PHP
Thinkphp实现MySQL读写分离操作示例
Jun 25 #PHP
Zend Framework页面缓存实例
Jun 25 #PHP
非常好用的Zend Framework分页类
Jun 25 #PHP
You might like
利用PHP实现短域名互转
2013/07/05 PHP
PHP加密函数 Javascript/Js 解密函数
2013/09/23 PHP
PHP扩展CURL的用法详解
2014/06/20 PHP
Win7 64位系统下PHP连接Oracle数据库
2014/08/20 PHP
PHP与Ajax相结合实现登录验证小Demo
2016/03/16 PHP
浅谈PHP匿名函数和闭包
2019/03/08 PHP
jquery 插件开发方法小结
2009/10/23 Javascript
javascript圆盘抽奖程序实现原理和完整代码例子
2014/06/03 Javascript
兼容Firefox的Javascript XSLT 处理XML文件
2014/12/31 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
javascript实现控制div颜色
2015/07/07 Javascript
浅谈js中的三种继承方式及其优缺点
2016/08/10 Javascript
jQuery中ajax错误调试分析
2016/12/01 Javascript
Nodejs 获取时间加手机标识的32位标识实现代码
2017/03/07 NodeJs
jQuery导航条固定定位效果实例代码
2017/05/26 jQuery
详解Angular4中路由Router类的跳转navigate
2017/06/09 Javascript
jquery 遍历hash操作示例【基于ajax交互】
2019/10/12 jQuery
vue tab切换,解决echartst图表宽度只有100px的问题
2020/07/19 Javascript
[00:17]DOTA2荣耀之路5:It’s a disastah!
2018/05/28 DOTA
linux系统使用python监控apache服务器进程脚本分享
2014/01/15 Python
Python设计模式中单例模式的实现及在Tornado中的应用
2016/03/02 Python
python3+PyQt5+Qt Designer实现堆叠窗口部件
2018/04/20 Python
详细介绍pandas的DataFrame的append方法使用
2019/07/31 Python
Python如何根据时间序列数据作图
2020/05/12 Python
详解numpy1.19.4与python3.9版本冲突解决
2020/12/15 Python
国际知名军事风格休闲装品牌:Alpha Industries(阿尔法工业)
2017/05/24 全球购物
台湾家适得:Homeget
2019/02/11 全球购物
澳大利亚购买太阳镜和眼镜网站:Glamoureyes
2020/09/22 全球购物
亚洲在线旅行门户网站:Expedia.com.hk(智游网)
2020/04/14 全球购物
一些Solaris面试题
2015/12/22 面试题
社区党员先进事迹
2014/01/22 职场文书
班主任个人工作反思
2014/04/28 职场文书
企业形象策划方案
2014/05/29 职场文书
大班上学期个人总结
2015/02/13 职场文书
提取视频中的音频 Python只需要三行代码!
2021/05/10 Python
mysql联合索引的使用规则
2021/06/23 MySQL