一、工具准备



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/


注: 下载扩展是要注意看自己的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;加入以下代码



#php for redis

extension=php_igbinary.dll

extension=php_redis.dll

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



四.demo



$redis = new redis();  

$redis->connect("127.0.0.1","6379");  //php客户端设置的ip及端口  

//存储一个 值  

$redis->set("type",12);  

echo $redis->get("type");  


//存储多个值  

$array = array('first_key'=>'first_val',  

    'second_key'=>'second_val',  

    'third_key'=>'third_val');  

$array_get = array('first_key','second_key','third_key');  

$redis->mset($array);  

var_dump($redis->mget($array_get));


windows下安装redis 以及phpredis的扩展 (windows redis php&php7)_redis



附: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:移除一个或多个成员