set集合类型
3、set集合类型
简介
set集合和list列表十分的相似,都可以存储多个字符串。但是list列表可以存储重复值,而set集合中不可重复。
集合结构
其中的user为键名,其可以包含多个 不重复 的元素,各不相同
[ "user":[ "yanying1", "yanying2", "yanying3" ] ]
操作方法
演示(命令行 + PHP演示)
命令行:
添加一个元素到集合,返回 1代表插入成功;0元素代表已经存在
sadd set-key item // 返回 1
同理,再添加元素到集合
sadd set-key item2 // 返回1,表示插入成功,集合内没有该元, sadd set-key item3 // 返回 1sadd set-key item // 返回0,表示插入失败,集合内已经存在
添加完了之后,我们来获取集合内全部的元素,成功返回 全部元素
smembers set-key // 得到结果:'item','item2','item3',由于元素不能重复,所以最后一个item不存在集合中
下面介绍这个集合的重要功能,使用sismember命令 检查元素是否在集合中 , 存在返回1,不存在返回0
sismember set-key item4 // 由于item4不在集合中,所以返回 0 sismember set-key item // item元素是存在于集合中的,返回1;同理item2,item3也是会返回1
下面我们尝试删除一个元素,如果删除成功过后,会返回 被删除元素的个数
srem set-key item //删除成功,返回删除个数:1 srem set-key item // item之前已经被删除,所以删除失败,返回个数0。这里不是表示true or false
我们再次检查所有元素,发现只剩下item2,item3
smembers set-key // 返回'item2','item3'
PHP版本演示
第一步,链接redis数据库
$redis = new Redis(); $redis->connect('127.0.0.1', 6379);
我们先插入一个元素item到set-key集合。1代表插入成功;0元素代表已经存在
$redis->sadd('set-key','item'); // 添加成功,返回1
接下来,我们再次添加一次item到set-key集合,发现已经存在,并且 返回了0
$redis->sadd('set-key','item'); // 集合中已经存在item,添加失败,返回0
为了下面演示,我们在添加几个元素
$redis->sadd('set-key','item2'); $redis->sadd('set-key','item3');
现在集合中有3个元素了,我们使用smembers命令全部取出
$r = $redis->smembers('set-key'); var_dump($r);
打印过后,我们获取了一个包含item,item2,item3的数组
array (size=3) 0 => string 'item' (length=4) 1 => string 'item2' (length=5) 2 => string 'item3' (length=5)
下面我们使用sismember命令来检查一个元素是否存在于集合中,这个在 检查如昵称是否已经存在 时候非常有用
$redis->sismember('set-key','item'); //该元素存在集合中,则为 boolean true,反之boolean false
最后,还是删除一个元素。假设是item,第一次删除,该元素存在于集合,则返回 被删除的个数1
$redis->srem('set-key','item'); // int 1
这时,我们再次执行删除命令,由于元素已经不存在集合,所以,返回 被删除0个
$redis->srem('set-key','item'); // int 0

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

