怎么在ThinkPHP中利用Memcached缓存数据

  介绍

本篇文章为大家展示了怎么在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缓存数据