码迷,mamicode.com
首页 > Web开发 > 详细

小蚂蚁学memcache笔记—php操作memcache(1)

时间:2015-09-11 10:52:32      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:

准备工作

    把php_memcache.dll文件拷贝到php的ext下。

    特别说明:不同版本php所用的php_memcache.dll版本不同。

    修改php.ini文件,加载php_memcache.dll(这个文件其实就是加载了一大堆的函数)

    重启apache

php实际操作

    $mem    =    new Memcache();    //实例化对象

    $mem    =    connect(‘127.0.0.1‘,11211);

    $mem    ->    add(键,值,是否压缩,生存时间);

    $mem    ->    set(同上);    //键如果存在就修改,不存在就添加

memcache可以保存字符串和数组、数字、对象

    保存对象的时候会产生一个问题:在另外一个文件中取出对象的时候,有一个需要注意的地方。对应php5.2这个版本会提示错误,对php5.3这个版本会提示incomplete信息。这个错误和保存在$_SESSION中是一样的,解决方法也一样。

    解决方法:在当前脚本在重新声明类定义(把类也拿过去)

添加    null 取出    null

添加    false 取出    ‘’

修改    $mem->replace(同添加);

删除    $mem->delete(键);

全部冲掉    flush

注意细节:在添加数据时,如果把expire(超时)设为0,表示永不过期。expire直接给秒数,则最大只能是30天,即30*3600*24.如果你希望保持时间超过30天,用时间戳表示,即 time()+天数*3600*24 。

放入资源,却出0,所以资源是不支持的。(注意)

在添加数组时,可以根据需要,进行序列化 serializa() 可以把对象和数组保存在磁盘中。

相对应的还有json化,也是同样可以变成字符串。区别在于:serializa()可以把数据的类型和大小一些信息同样的保存下来,主要用于数据的储存。json_encode()不保存数据类型等信息,主要是方便数据的传输。

 

 

小蚂蚁学memcache笔记—php操作memcache(1)

标签:

原文地址:http://my.oschina.net/woshixiaomayi/blog/504773

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!