所有的操作都是在PHP中操作,不会使用命令行,如有不会安装的,请看之前的文章
这都是一些基本操作,每天操作一下,就可以记住
1. 字符串(string)set,getset是设置值,get是获取值
mset,mget批量设置键对值和批量获取键对值
incr,decr自增和自减并返回新的值
4.incrby,decrby同时加10或同时减105.append这个方法是往一个键值后边追加数值2. 哈希操作跟字符串类型差不多,就不做演示了
hSet( ‘key’, ‘hashkey1’, val1 ) 设置key的某个hashkey1为val1
hGet( ‘key’, ‘hashkey1’ ) 读取key下hashkey1的值
hMset( ‘key’, ‘arr’) 设置key下多个hashkey的值(通过arr的key(hashkey)对应到val(hashval))
hMget( ‘key’, ‘arr’ ) 读取key下多个hashkey的值(arr的value值为hashkey)
hDel( ‘key’, ‘hashkey1’,’hashkey2=null’,’hashkey3=null’) 删除key下指定hashkey1的值
hIncrBy( ‘key’, ‘hashkey1’, int number) 给key下指定的hashkey1增加整型数值
hIncrByFloat( ‘key’, ‘hashkey1’,float number) 给key下指定的hashkey1增加金额
hLen( ‘key’); 获得key下的field个数
hGetall( ‘key’); 返回指定key的数据结果(返回所有的field和value)
hKeys( ‘key’); 返回指定key下的所有field
hVals(‘key’); 返回指定key下的所有value
3. 列表(list)list类型是双向链表,list既可以用作栈,也可以用到队列,关于栈跟队列在下一篇文章在写
切记是一维数组
1.lpush从头开始添加,rpush从尾部开始添加,lRange读取指定区间的元素,从0开始索引
2. lPop从尾部开始删除,rpop从头部开始删除,俩个都是删除后返回删除的值
3. llen返回list的长度
4.返回list的所有值
5. ltrim截取list,保留指定区间的值,返回值是Bool
4. 集合(set)Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。
集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
1.sAdd添加一个string元素到key对应的set集合中,sMembers返回key对应set的所有元素,结果是无序的
2.sRem 移除指定元素(value),scard返回set元素的个数,sismember判读key的集合中是否存在元素val
3.sinter返回所有给定的set(集合)的交集,sunion( key1, key2 ) 返回所有给定的set(集合)的并集,sdiff( key1, key2 ) 返回所有给定的set(集合)的差集
这个就不测试了,知道就可以了
5. 有序集合(sorted set)Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
1.zAdd( key, score, value1, score2, value2 ) 添加元素到集合,如果元素在集合中存在更新对应score
zCard( key ); 返回集合中元素个数
zScore( key, value ); 返回给定元素的score
2.zRem( key, val ); 删除指定元素(元素值),zRange('list',0, -1))返回指定键的元素
3.zRemrangebyrank( key, score1, score2 ); 删除集合中排名(权重)在给定区间的元素
zRangebyscore(key, start, end ) 从集合中返回指定区间(权重值),返回按自增排序的数组
zRevrangebyscore() 同上,降序排序
zRange( key, start, end ) 从集合中返回指定区间(索引),返回按自增排序的数组
zRevrange() 同上,降序排序
zIncrby( key, ++score, val ) 增加某个val的权重值
自行测试哈,用法就是函数后边的的参数