php操作redis--集合(set)篇


常用函數:sAdd,sMembers,sPop,sUnion等

應用場景:與list類型類似,是一個列表的功能,不同的是set可以自動排重,提供了一個判斷某一個成員是否存在一個set集合內的重要接口。

連接

$redis = new Redis();

$redis->connect('127.0.0.1','6379');

添加:成功返回1,存在相同的值返回0

echo $redis->sAdd('set','cat');   //1

echo $redis->sAdd('set','cat');   //0

echo $redis->sAdd('set','dog');   //1

查看集合中的所有元素

print_r($redis->sMembers('set'));   //Array ( [0] => cat [1] => dog )

判斷元素是否是集合的成員

var_dump($redis->sIsMember('set','dog'));   //boolean true

查看集合中成員的數量

echo $redis->sCard('set');  //2

 

刪除集合中指定值的元素 

echo $redis->sRem('set','dog');  //1

移除並返回集合中的一個隨機元素

echo $redis->sPop('set');  //cat

 

拓展:

假設有兩個集合並存在交集,set1,set2

返回集合的交集

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');


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM