修改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 VS ASP
Oct 09 PHP
php 在线打包_支持子目录
Jun 28 PHP
discuz7 phpMysql操作类
Jun 21 PHP
php导出word格式数据的代码实例
Nov 25 PHP
PHP判断是否有Get参数的方法
May 05 PHP
PHP实现的连贯操作、链式操作实例
Jul 08 PHP
使用新浪微博API的OAuth认证发布微博实例
Mar 27 PHP
php实现的http请求封装示例
Nov 08 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
Feb 08 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
Nov 14 PHP
thinkPHP框架实现多表查询的方法
Jun 14 PHP
php use和include区别总结
Oct 13 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
Codeigniter中mkdir创建目录遇到权限问题和解决方法
2014/07/25 PHP
php实现mysql事务处理的方法
2014/12/25 PHP
php简单统计中文个数的方法
2016/09/30 PHP
JavaScript 存在陷阱 删除某一区域所有节点
2010/05/10 Javascript
JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
2011/05/28 Javascript
cookie.js 加载顺序问题怎么才有效
2013/07/31 Javascript
JQuery判断radio(单选框)是否选中和获取选中值方法总结
2015/04/15 Javascript
在jQuery中处理XML数据的大致方法
2015/08/14 Javascript
有关jquery与DOM节点操作方法和属性记录
2016/04/15 Javascript
jquery层级选择器的实现(匹配后代元素div)
2016/09/05 Javascript
浅谈JQ中mouseover和mouseenter的区别
2016/09/13 Javascript
详解js前端代码异常监控
2017/01/11 Javascript
javascript高级模块化require.js的具体使用方法
2017/10/31 Javascript
js实现复制功能(多种方法集合)
2018/01/06 Javascript
详解Ubuntu安装angular-cli遇到的坑
2018/09/08 Javascript
微信小程序可滑动周日历组件使用详解
2019/10/21 Javascript
JavaScript获取当前url路径过程解析
2019/12/27 Javascript
python中引用与复制用法实例分析
2015/06/04 Python
浅谈Python数据类型之间的转换
2016/06/08 Python
python实现数独游戏 java简单实现数独游戏
2018/03/30 Python
Python 的AES加密与解密实现
2019/07/09 Python
利用Python绘制有趣的万圣节南瓜怪效果
2019/10/31 Python
python 利用已有Ner模型进行数据清洗合并代码
2019/12/24 Python
python nohup 实现远程运行不宕机操作
2020/04/16 Python
在keras中实现查看其训练loss值
2020/06/16 Python
如何通过命令行进入python
2020/07/06 Python
CSS3模拟动画下拉菜单效果
2017/04/12 HTML / CSS
Peter Millar官网:美国高档生活服饰品牌
2018/07/02 全球购物
Brydge英国:适用于Apple iPad和Microsoft Surface Pro的蓝牙键盘
2019/05/16 全球购物
某科技软件测试面试题
2013/05/19 面试题
理工类毕业自我鉴定
2014/02/20 职场文书
学习之星事迹材料
2014/05/17 职场文书
毕业生党员个人总结
2015/02/14 职场文书
2015年“公民道德宣传日”活动方案
2015/05/06 职场文书
2016年安全月活动总结
2016/04/06 职场文书
Python Pandas解析读写 CSV 文件
2022/04/11 Python