(PHP)redis Set(集合)操作
/**
*
* Set操作
* 集合命令
* 保证数据的唯一
* 不保证顺序
*
*/ //将一个元素加入集合,已经存在集合中的元素则忽略。若集合不存在则先创建,若key不是集合类型则返回false,若元素已存在返回0,插入成功返回1。
$redis->sAdd('set3', '11'); //返回集合中所有成员。
$redis->sMembers('set3'); //判断集合里是否存在指定元素,是返回true,否则返回false。
$redis->sismember('set', 'hello'); //返回集合中元素的数量。
$redis->scard('set'); //随机删除并返回集合里的一个元素。
$redis->sPop('set'); //随机返回(n)个集合内的元素,由第二个参数决定返回多少个
//如果 n 大于集合内元素的个数则返回整个集合
//如果 n 是负数时随机返回 n 的绝对值,数组内的元素会重复出现
$redis->sRandMember('set', -20); //删除集合中指定的一个元素,元素不存在返回0。删除成功返回1,否则返回0。
$redis->srem('set', 'hello'); //模糊搜索相对的元素,
//参数:key,迭代器变量,匹配值,每次返回元素数量(默认为10个)
$redis->sscan('set', $it, 's*', 5); //将指定一个源集合里的值移动到一个目的集合。成功返回true,失败或者源集合值不存在时返回false。
//参数:源集合,目标集合,移动的元素
$redis->sMove('set', 'set2', 'sdf4'); //以第一个集合为标准,后面的集合对比,返回差集
$redis->sDiff('set', 'set2','set3'); //参数:第一个参数为目标集合,存储缺少的值(三个集合相加,同样字段覆盖,组合成一个新的集合)返回第一个参数所增加的值的个数。
$redis->sDiffStore('set', 'set3', 'set2'); //返回所有集合的相同值,必须所有集合都有,不存在的集合视为空集。
$redis->sInter('set', 'set3', 'set2'); //参数:第一个参数为目标集合,存储后面集合的交集
//若目的集合已存在则覆盖它。返回交集元素个数,否则返回储存的交集
$redis->sInterStore('set4', 'set', 'set3'); //把所有集合合并在一起并返回
$redis->sUnion('set', 'set2', 'set3'); //以第一个集合为目标,把后面的集合合并在一起,存储到第一个集合里面,如果已经存在则覆盖掉,并返回并集的个数
$redis->sUnionStore('set4', 'set', 'set2', 'set3');
(PHP)redis Set(集合)操作的更多相关文章
- Redis有序集合操作
有序集合存储着成员和分值之间的映射,并且提供了分值处理命令,以及根据分值大小有序的获取或扫描成员和分值的命令 (常用命令) ZADD : ZADD key-name score member [sco ...
- 八十四:redis之redis的集合、哈希操作
set集合操作 添加元素:sadd set value1 value2... 查看元素:smembers set 移除元素:srem set member 查看集合中的元素个数:scard set 获 ...
- Redis集合操作
Redis的集合以无序的形式存储多个各不相同的元素 (常用的集合命令) SADD : SADD key-name item [item ...]----------将一个或多个元素添加到集合里,并返回 ...
- python之redis和memcache操作
Redis 教程 Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理.Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据 ...
- Redis的PHP操作手册(转)
String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis-> ...
- Redis cluster学习 & Redis常识 & sort操作
Redis中的5种数据类型String.Hash.List.Set.Sorted Set. Redis源码总代码一万多行. 这篇文章有一些Redis "常识" http://www ...
- Redis的PHP操作手册
String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis-> ...
- Redis的PHP操作手册(自用)
String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis-> ...
- redis 有序集合(zset)函数
redis 有序集合(zset)函数 zAdd 命令/方法/函数 Adds the specified member with a given score to the sorted set stor ...
- 缓存数据库-redis数据类型和操作(list)
转: 狼来的日子里! 奋发博取 缓存数据库-redis数据类型和操作(list) 一:Redis 列表(List) Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素导列表的头部( ...
随机推荐
- 分享知识-快乐自己:快速理解(Java内部类)
1):成员内部类 什么是内部类?: 内部类就是在一个类中定义另一个类. 定义语法: 使用命令行查看编译 产生的文件: 如何生成内部类对象? 创建规则:内部类对象 需要先声明外部类对象. 内部类以及外部 ...
- NserviceBus过期处理
NserviceBus不过期,修改注册表 HKEY_CURRENT_USER\Software\NServiceBus\3.3下的项TrailDate到2099-08-02
- C++ 值传递、址传递、引用传递
一.值传递 int func(int p) 值传递会在栈中开辟一块空间 p,使得p和实参的a 同值. 此时你在函数func里面对p进行任何操作都不会对原值a产生任何影响.因为a 和p本就就是两个变 ...
- RTP 打包H264与AAC
static int h264_parse(Track *tr, uint8_t *data, size_t len) { h264_priv *priv = tr->private_data; ...
- Winform程序实现多显示屏、多屏幕显示的2种方法
这篇文章主要介绍了Winform窗口实现多显示屏显示的2种方法,本文直接给出了实现代码,并对其中的一些重要参数做了解释,需要的朋友可以参考下. 一台主机连接了2台显示器(2个显卡),要求一个程序的两个 ...
- [转]Google开源Leak Finder—用于检测内存泄漏的JavaScript工具-----可惜,暂时打不开google的网站,下载不了
近日,Google开源了Leak Finder,这款工具可以查看JavaScript应用的堆,进而发现内存泄漏. 作为一门垃圾收集语言,JavaScript并不会出现常见的内存泄露情况,特别是像C++ ...
- asp.net中日志框架Log4Net的使用
Log4Net是用来记录日志的,可以将程序运行过程中的信息输出到一些地方(文件.数据库.EventLog等),日志就是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题.日志的作用:将运 ...
- 二、java 与 scala相互调用
介绍:scala 是简化的java,运行于jvm的脚步语言.Java和scala通过各自编译器编译过都是jvm能解析class文件.本文介绍java和scala如何互调 scala的源代码文件是以. ...
- 微服务理论之五:微服务架构 vs. SOA架构
一.面向服务的架构SOA 面向服务的架构是一种软件体系结构,应用程序的不同组件通过网络上的通信协议向其他组件提供服务.通信可以是简单的数据传递,也可以是两个或多个服务彼此协调连接.这些独特的服务执行一 ...
- Myeclipse如何使用Maven添加jar包
很多新手都不知道如何在maven项目里添加jar包. 以前我还没接触maven的时候下载过一个demo,是maven项目. 我居然是照着他的pom.xml文件一个一个的写!!! 很多人认为理所当然的东 ...