redis的set与list类型类似,是一个列表的功能,不同的是set可以自动排重,提供了一个判断某一个成员是否存在一个set集合内的重要接口。set中的元素都具有唯一性。
相关操作
$redis = new redis;
$redis->connect('127.0.0.1',6379);
$redis->auth("password");
// 往集合set1中添加元素
$redis->sAdd("set1",1); // return 1 添加成功
$redis->sAdd("set1",2); // return 1
$redis->sAdd("set1",1); // return 0 添加失败
//判断元素是否是集合的成员
var_dump($redis->sIsMember("set1",1)); // return true
//删除集合中指定值的元素
echo $redis->sRem('set1',1); //1
//移除并返回集合中的一个随机元素
echo $redis->sPop('set1'); //2
// 返回名称为key的set的元素个数
echo $redis-> sSize('set1');
// 将value元素从名称为set1的集合移到名称为set2的集合
$redis->sMove($set1,$set2,$value);
// 返回集合的交集
print_r($redis->sInter('set1','set2'));
// 把交集放到一个集合里
$redis->sInterStore('output','set1','set2');
// 返回集合的并集
print_r($redis->sUnion('set1','set2'));
// 把并集放到一个集合里
$redis->sUnionStore('output2','set1','set2');
// 返回集合的差集
print_r($redis->sDiff('set1','set2'));
// 把并集放到一个集合里
$redis->sDiffStore('output3','set1','set2');
网友评论