一、工具准备 1. Redis for windows 下载 https://github.com/MSOpenTech/redis 2. PHP扩展下载 http://pecl.php.net/package-stats.php (redis 和 igbinary) PHP 7 扩展下载 http://windows.php.net/downloads/pecl/snaps/redis/20160319/ http://windows.php.net/downloads/pecl/releases/redis/3.1.2/ 注: 下载扩展是要注意看自己的php版本及x86orx64 和 compiler 编译版本 二、redis安装 1.redis安装 将下载后的redis文件解压到安装目录 2.redis启动 1).windows+R 然后 cmd 进入到D:\program files\redis(根据自己redis路径自行调整) 2).输入 redis-server.exe 点击回车,自己注意看一下redis目录下文件情况,不同版本的启动方式有点小差异。出现下图标识执行成功。成功后别关闭当前窗口,操作redis期间都要保证此窗口打开,关闭此窗口表示 关闭reids,重新打开一个cmd 3).cmd 进入到D:\program files\redis(根据自己redis路径自行调整) 然后输入 redis-cli.exe 点击回车。现在我们就可以做一些测试如下图,标识redis安装 启动成功。 注:两个cmd窗口同时打开,之前开启redis的窗口不能关掉 三、 php扩展 1.把下载到的php_redis.dll和php_igbinary.dll扩展文件 拷贝到php\ext中 2. 打开php.ini;加入以下代码

  1. #php for redis
  2. extension=php_igbinary.dll
  3. extension=php_redis.dll

3.重启服务,phpinfo中有redis项表示成功 四.demo

  1. $redis = new redis();
  2. $redis->connect(“127.0.0.1”,”6379”); //php客户端设置的ip及端口
  3. //存储一个 值
  4. $redis->set(“type”,12);
  5. echo $redis->get(“type”);

  6. //存储多个值

  7. $array = array(‘first_key’=>’first_val’,
  8. ‘second_key’=>’second_val’,
  9. ‘third_key’=>’third_val’);
  10. $array_get = array(‘first_key’,’second_key’,’third_key’);
  11. $redis->mset($array);
  12. var_dump($redis->mget($array_get));

附:Redis类的一些属性及方法 a)连接redis server

  • connect :连接server
  • pconnect :长连接
  • auth :权限验证
  • select :选择DB
  • close : 关闭连接
  • setOption : 设置 client 选项
  • getOption : 获取client选项
  • ping : ping redis server
  • echo : 输出字符串

注意,如果频繁操作redis,不停地connect 和close会很耗性能的,这个时候,建议用pconnect 建立个长连接 b)字符串读写函数

  • append :在值的后面追加值
  • decr :递减一个key的值
  • incr :递增一个key的值
  • get :获取一个值
  • set :设置一个值
  • getSet :设置值,并返回老值
  • mGet :批量获取值
  • mSet :批量设置值
  • strlen :获取值长度

注意:如果能用批量操作尽量用批量,减少频繁连接redis数据库性能 c)hash读写函数

  • hDel :删除一个多个域
  • hExists :判断一个hash域是否存在
  • hGet :获取hash域的值
  • hGetAll :获取所有域值
  • hIncrBy :自增长一个hash int域的值
  • hKeys :获取hash 所有域
  • hLen :获取域个数
  • hMGet :批量获取域的值
  • hMSet :批量设置域的值
  • hSet :设置域的值
  • hVals:得到所有域的值

d)list读写函数

  • lInsert:插入元素
  • lLen:list长度
  • lPop:移除并获取第一个颜色
  • lPush:插入一个元素
  • lRem:移除元素
  • lSet:设置元素值

e)set

  • sAdd:增加一个或多个成员
  • sIsMember:是否包含
  • sMembers:得到成员
  • sMove:移动成员
  • sPop:移除成员
  • sRandMember:得到随机成员
  • sRem:删除

f)sorted set

  • zAdd:增加一个或多个
  • zCard:成员个数
  • zIncrBy:递增成员score
  • zRange:返回索引范围内的成员
  • zRangeByScore :返回score范围内的成员
  • zScore:获取成员score
  • zRem:移除一个或多个成员