Rumah 类库下载 PHP类库 set集合类型

set集合类型

Oct 20, 2016 pm 02:31 PM

3、set集合类型

简介

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

集合结构

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

[
    "user":[
        "yanying1",
        "yanying2",
        "yanying3"
    ]
]
Salin selepas log masuk

操作方法

1.png

演示(命令行 + PHP演示)

命令行:

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

sadd set-key item // 返回 1
Salin selepas log masuk

同理,再添加元素到集合

sadd set-key item2 // 返回1,表示插入成功,集合内没有该元,
sadd set-key item3 // 返回
1sadd set-key item // 返回0,表示插入失败,集合内已经存在
Salin selepas log masuk

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

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

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

sismember set-key item4 // 由于item4不在集合中,所以返回 0
sismember set-key item // item元素是存在于集合中的,返回1;同理item2,item3也是会返回1
Salin selepas log masuk

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

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

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

smembers set-key // 返回'item2','item3'
Salin selepas log masuk

PHP版本演示

第一步,链接redis数据库

$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
Salin selepas log masuk

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

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

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

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

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

$redis->sadd('set-key','item2');
$redis->sadd('set-key','item3');
Salin selepas log masuk

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

$r = $redis->smembers('set-key');
var_dump($r);
Salin selepas log masuk

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

array (size=3)
  0 => string 'item' (length=4)
  1 => string 'item2' (length=5)
  2 => string 'item3' (length=5)
Salin selepas log masuk

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

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

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

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

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

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


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)