修改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中的字符串函数
Nov 24 PHP
php 设计模式之 单例模式
Dec 19 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
PHP数据过滤的方法
Oct 30 PHP
ThinkPHP模版引擎之变量输出详解
Dec 05 PHP
php中stdClass的用法分析
Feb 27 PHP
php递归遍历多维数组的方法
Apr 18 PHP
php+ajax实现无刷新动态加载数据技术
Apr 28 PHP
php图像处理类实例
Jul 28 PHP
PHP简单获取多个checkbox值的方法
Jun 13 PHP
php简单实现多维数组排序的方法
Sep 30 PHP
PHP curl批处理及多请求并发实现方法分析
Aug 15 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基于socket实现SMTP发送邮件的方法
2015/03/05 PHP
用javascript动态调整iframe高度的方法
2007/03/06 Javascript
解读IE和firefox下JScript和HREF的执行顺序
2008/01/12 Javascript
suggestion开发小结以及对键盘事件的总结(针对中文输入法状态)
2011/12/20 Javascript
重构Javascript代码示例(重构前后对比)
2013/01/23 Javascript
利用javascript判断文件是否存在
2013/12/31 Javascript
NodeJS制作爬虫全过程(续)
2014/12/22 NodeJs
JavaScript中的原型链prototype介绍
2014/12/30 Javascript
JS实现网页滚动条感应鼠标变色的方法
2015/02/26 Javascript
JavaScript实现上下浮动的窗口效果代码
2015/10/12 Javascript
js实现div在页面拖动效果
2016/05/04 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
2017/02/10 Javascript
nodejs模块学习之connect解析
2017/07/05 NodeJs
Vue中父子组件通讯之todolist组件功能开发
2018/05/21 Javascript
手把手教你实现 Promise的使用方法
2020/09/02 Javascript
Python 面向对象 成员的访问约束
2008/12/23 Python
Python实现拼接多张图片的方法
2014/12/01 Python
python日期时间转为字符串或者格式化输出的实例
2018/05/29 Python
python3去掉string中的标点符号方法
2019/01/22 Python
python ETL工具 pyetl
2020/06/07 Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
2020/07/06 Python
python 进制转换 int、bin、oct、hex的原理
2021/01/13 Python
css3动画效果抖动解决方法
2018/09/03 HTML / CSS
css3打造一款漂亮的卡哇伊按钮
2013/03/20 HTML / CSS
一款CSS3实现多功能下拉菜单(带分享按)的教程
2014/11/05 HTML / CSS
英国高级百货公司:Harvey Nichols
2017/01/29 全球购物
美国沙龙美发产品购物网站:Hair.com by L’Oreal
2020/11/09 全球购物
自我评价范文
2013/12/22 职场文书
班组长工作职责
2013/12/25 职场文书
财经学院自荐信范文
2014/02/02 职场文书
药店主任岗位责任制
2014/02/10 职场文书
试用期自我评价怎么写
2015/03/10 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书
导游词之云南丽江古城
2019/09/17 职场文书
排查MySQL生产环境索引没有效果
2022/04/11 MySQL