介绍
本篇文章为大家展示了怎么在ThinkPHP中利用Memcached缓存数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
具体如下:
ThinkPHP默认使用文件缓存数据,支持Memcache等其他缓存方式,有两个PHP扩展:Memcache和Memcached, Memcahe官方有说明,主要说一下Memcached。
相对于PHP Memcache, PHP Memcached是基于原生的c的libmemcached的扩展,更加完善,建议替换为PHP Memcached。
版本3.2.2开始内置了Memcached驱动(ThinkPHP/图书馆/认为/缓存/司机/Memcached.class。php),但是文档中并没有说明用法,通过查看源码配置并测试成功。
有个bug至今未修复,就是过期时间为0的问题,理论上应该是永久缓存,但是驱动中未做处理,会马上过期,设置方法修改如下
, public function 设置(名称、美元,美元的价值,美元expire =, null), { ,,N (& # 39; cache_write& # 39;, 1); 如果才能(is_null($)到期),{ ,,expire 美元;=,$ this→选项(& # 39;到期# 39;); ,,}=美元才能name $ this→选项(& # 39;前缀# 39;]。美元名称; if 才能;(空(到期美元)) ,,time 美元;=,0; 其他的才能 ,,time 美元;=,时间(),+,到期美元; 如果才能($ this→处理程序→设置(名称、美元,美元的价值,美元)),{ ,,如果($ this→选项(& # 39;长度# 39;)在0),{ ,,,//,记录缓存队列 ,,,这个→美元队列($名称); ,,} ,,return 真实; ,,} return 才能;假; 以前,}>在配置文件配置。php中添加
//缓存配置 ,& # 39;DATA_CACHE_TYPE& # 39;,=祝辞,& # 39;memcached # 39; ,& # 39;MEMCACHED_SERVER& # 39;,=祝辞,阵列( 数组才能(& # 39;127.0.0.1 # 39;,,11211,,0) 之前,),>驱动中是调用:
Memcached:: addServers(数组)可以添加多个缓存服务器
还有一个配置项是MEMCACHED_LIB,调用的是:
Memcached:: setoption(数组)怎么在ThinkPHP中利用Memcached缓存数据