概念:
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
1. sadd('keyname','value1','value2','value') (设置集合值,参数 keyname 可以理解为集合名, value 是 存在集合里的值) / scard('集合名') (获取集合里的成员数)
$redis->sadd('key1','value1','value2','value3'); // 设置集合的值
$redis->sadd('key1','value2'); // 设置集合的值
$a = $redis->smembers('key1');//取出集合内容
$b = $redis->smembers('key2');//取出一个不存在的集合,返回的是空数组
$redis->scard('key1');
2. sdiff('集合1',‘集合2’) (比较两个集合。以集合1 为标准,判断集合1 里的 元素 在集合2 中是否存在, 返回 不存在的 元素)/ sdiffstore('集合3',集合1,集合2) (将sdiff 得到的数据 存入集合3中 )
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$redis->sadd('key2','value2','value3'); // 设置集合的值
$a = $redis->sdiff('key1','key2');//比较两个集合。以集合1 为标准,判断集合1 里的 元素 在集合2 中是否存在, 返回 不存在的 元素
$redis->sdiffstore('key3','key1','key2');//以集合1 为标准,判断集合1 里的 元素 在集合2 中是否存在,不存在则存在集合3中
3.sinter(集合1,集合2) (得到两个集合的交集) / sinterstore(集合3,集合1,集合2) (获取集合1 和集合 2的交集存在 集合3中)
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$redis->sadd('key2','value2','value3'); // 设置集合的值
$a = $redis->sinter('key1','key2'); // 获取两个集合的交集
$b = $redis->sinterstore('key3','key1','key2'); //获取集合1 和集合 2的交集存在 集合3中
4.sismember(集合,值) (判断值是不是存在指定的集合里,是的话返回 true 不是返回false)
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$a = $redis->sismember('key1','value2'); //判断元素是否是集合里的值,是 返回 true 不是返回 false
5.smove(集合1,集合2,集合1的一个元素值) (将集合1里的元素移动到集合2中)
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$redis->sadd('key2','value2','value3'); // 设置集合的值
$a = $redis->smove('key1','key2','value4');// 将 key1 里的 元素 value4 移动 到集合 key2 中
$b = $redis->smembers('key2');//获取集合 key2 的所有元素
6. spop(集合) (随机返回并移除 集合里的一个元素) / srandmember(集合,个数) (随机获取集合里指定个数元素,不填的话,默认返回一个元素是字符串,填1 返回的是数组形式)
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$redis->sadd('key2','value2','value3'); // 设置集合的值
$a = $redis->spop('key1');// 移除并返回集合里的一个元素
$b = $redis->smembers('key1'); // 获取集合里的所有元素
$c = $redis->srandmember('key1',1); // 随机获取集合里指定个数元素,不填的话,默认返回一个元素是字符串,填1 返回的是数组形式
7.srem(集合,值1,值2,值n) (移除集合里一个或者多个元素)
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$redis->sadd('key2','value2','value3'); // 设置集合的值
$a = $redis->srem('key1','value1','value2'); // 移除集合里一个或多个元素
8..sunion( 集合1,集合2 ,集合n) (返回给定集合的并集,会自动去重) 、 sunionstore(集合3,集合1,集合2) (// 将集合1 集合2 的并集 存到集合3中)
$redis->sadd('key1','value1','value2','value4'); // 设置集合的值
$redis->sadd('key2','value2','value3'); // 设置集合的值
$a = $redis->sunion('key1','key2'); // 返回所有给定集合的并集, 会自动去重
$b = $redis->sunionstore('key3','key1','key2'); // 将集合1 集合2 的并集 存到集合3中
$c = $redis->smembers('key3');