首页 类库下载 PHP类库 set集合类型

set集合类型

Oct 20, 2016 pm 02:31 PM

3、set集合类型

简介

set集合和list列表十分的相似,都可以存储多个字符串。但是list列表可以存储重复值,而set集合中不可重复。

集合结构

其中的user为键名,其可以包含多个 不重复 的元素,各不相同

1

2

3

4

5

6

7

[

    "user":[

        "yanying1",

        "yanying2",

        "yanying3"

    ]

]

登录后复制

操作方法

1.png

演示(命令行 + PHP演示)

命令行:

添加一个元素到集合,返回 1代表插入成功;0元素代表已经存在

1

sadd set-key item // 返回 1

登录后复制

同理,再添加元素到集合

1

2

3

sadd set-key item2 // 返回1,表示插入成功,集合内没有该元,

sadd set-key item3 // 返回

1sadd set-key item // 返回0,表示插入失败,集合内已经存在

登录后复制

添加完了之后,我们来获取集合内全部的元素,成功返回 全部元素

1

smembers set-key // 得到结果:'item','item2','item3',由于元素不能重复,所以最后一个item不存在集合中

登录后复制

下面介绍这个集合的重要功能,使用sismember命令 检查元素是否在集合中 , 存在返回1,不存在返回0

1

2

sismember set-key item4 // 由于item4不在集合中,所以返回 0

sismember set-key item // item元素是存在于集合中的,返回1;同理item2,item3也是会返回1

登录后复制

下面我们尝试删除一个元素,如果删除成功过后,会返回 被删除元素的个数

1

2

srem set-key item //删除成功,返回删除个数:1

srem set-key item // item之前已经被删除,所以删除失败,返回个数0。这里不是表示true or false

登录后复制

我们再次检查所有元素,发现只剩下item2,item3

1

smembers set-key // 返回'item2','item3'

登录后复制

PHP版本演示

第一步,链接redis数据库

1

2

$redis = new Redis();

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

登录后复制

我们先插入一个元素item到set-key集合。1代表插入成功;0元素代表已经存在

1

$redis->sadd('set-key','item'); // 添加成功,返回1

登录后复制

接下来,我们再次添加一次item到set-key集合,发现已经存在,并且 返回了0

1

$redis->sadd('set-key','item'); // 集合中已经存在item,添加失败,返回0

登录后复制

为了下面演示,我们在添加几个元素

1

2

$redis->sadd('set-key','item2');

$redis->sadd('set-key','item3');

登录后复制

现在集合中有3个元素了,我们使用smembers命令全部取出

1

2

$r = $redis->smembers('set-key');

var_dump($r);

登录后复制

打印过后,我们获取了一个包含item,item2,item3的数组

1

2

3

4

array (size=3)

  0 => string 'item' (length=4)

  1 => string 'item2' (length=5)

  2 => string 'item3' (length=5)

登录后复制

下面我们使用sismember命令来检查一个元素是否存在于集合中,这个在 检查如昵称是否已经存在 时候非常有用

1

$redis->sismember('set-key','item'); //该元素存在集合中,则为 boolean true,反之boolean false

登录后复制

最后,还是删除一个元素。假设是item,第一次删除,该元素存在于集合,则返回 被删除的个数1

1

$redis->srem('set-key','item'); // int 1

登录后复制

这时,我们再次执行删除命令,由于元素已经不存在集合,所以,返回 被删除0个

1

$redis->srem('set-key','item'); // int 0

登录后复制


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)