Yii redis集合的基本使用教程


Posted in PHP onJune 14, 2020

前言

redis 的集合是无序的,集合成员是唯一的,不能重复。用户可以快速地对集合执行添加元素操作、移除元素操作以及检查一个元素是否存在于集合中。这里介绍一些常用的集合处理命令,并在 Yii 中的使用。

SADD

SADD:SADD key-name item [item …]
将一个或多个元素添加到集合里面,并返回被添加元素当中原本并不存在于集合里面的元素数量

SREM

SREM:SREM key-name item [item …]
从集合里面移除一个或多个元素,并返回被移除元素的数量

SISMEMBER

SISMEMBER:SISMEMBER key-name item
检查元素 item 是否存在于集合 key-name 里

SCARD

SCARD:SCARD key-name
返回集合包含的元素的数量

SMEMBERS

SMEMBERS:SMEMBERS key-name
返回集合包含的所有元素

SRANDMEMBER

SRANDMEMBER:SRANDMEMBER key-name [count]
从集合里面随机地返回一个或多个元素。当 count 为正数时,命令返回地随机元素不会重复;当 count 为负数时,命令返回地随机元素可能会出现重复

SPOP

SPOP:SPOP key-name
随机地移除集合中的一个元素,并返回被移除的元素

SMOVE

SMOVE:SMOVE source-key dest-key item
如果 source-key 包含元素 item,那么从集合 source-key 里面移除元素 item,并将元素 item 添加到集合 dest-key 中;如果 item 被成功移除,那么命令返回 1,否则返回 0

SDIFF

SDIFF:SDIFF key-name [key-name …]
返回那些存在于第一个集合、但不存在于其他集合中的元素(计算差集)

SDIFFSTORE

SDIFFSTORE:SDIFFSTORE dest-key key-name [key-name …]
将那些存在于第一个集合但并不存在于其他集合中的元素(差集)存储到 dest-key 键里面

SINTER

SINTER:SINTER key-name [key-name …]
返回那些同时存在于所有集合中的元素(计算交集)

SINTERSTORE

SINTERSTORE:SINTERSTORE dest-key key-name [key-name …]
将那些同时存在于所有集合的元素(交集)存储到 dest-key 键里面

SUNION

SUNION:SUNION key-name [key-name …]
返回那些至少存在于一个集合中的元素(计算并集)

SUNIONSTORE

SUNIONSTORE:SUNIONSTORE dest-key key-name [key-name …]
将那些至少存在于一个集合中的元素(并集)存储到 dest-key 键里面

在 Yii 中使用实例:

// 添加元素a,b,c
Yii::$app->redis->sadd('testSetKey', 'a', 'b', 'c');  // 3
// 移除元素c
Yii::$app->redis->srem('testSetKey', 'c');  // 1
// 检查元素c是否存在集合中
Yii::$app->redis->sismember('testSetKey', 'c');  // 0
// 返回集合包含的元素的数量
Yii::$app->redis->scard('testSetKey');  // 2
// 返回集合包含的所有元素
Yii::$app->redis->smembers('testSetKey');  // ["a","b"]
// 将元素a从testSetKey集合移到testSetKey2集合
Yii::$app->redis->smove('testSetKey', 'testSetKey2', 'a'); // 1
Yii::$app->redis->smembers('testSetKey');  // ["b"]
Yii::$app->redis->smembers('testSetKey2'); // ["a"]

总结

到此这篇关于Yii redis集合使用的文章就介绍到这了,更多相关Yii redis集合使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
PHP4 与 MySQL 数据库操作函数详解
Oct 09 PHP
追求程序速度,而不是编程的速度
Apr 23 PHP
PHP分页显示制作详细讲解
Nov 19 PHP
PHP遍历并打印指定目录下所有文件实例
Feb 10 PHP
Drupal读取Excel并导入数据库实例
Mar 02 PHP
PHP从FLV文件获取视频预览图的方法
Mar 12 PHP
php curl 上传文件代码实例
Apr 27 PHP
yii2框架中使用下拉菜单的自动搜索yii-widget-select2实例分析
Jan 09 PHP
PHP读MYSQL中文乱码的快速解决方法
Oct 01 PHP
php简单计算年龄的方法(周岁与虚岁)
Dec 06 PHP
Yaf框架封装的MySQL数据库操作示例
Mar 06 PHP
laravel框架模型和数据库基础操作实例详解
Jan 25 PHP
php获取小程序码的实现代码(B类接口)
Jun 13 #PHP
laravel admin实现分类树/模型树的示例代码
Jun 10 #PHP
详解php反序列化
Jun 10 #PHP
实例讲解PHP表单
Jun 10 #PHP
如何在PHP中使用数组
Jun 09 #PHP
详解PHP中curl_multi并发的实现
Jun 08 #PHP
THINKPHP5.1 Config的配置与获取详解
Jun 08 #PHP
You might like
在服务端进行目录建立、删除,文件上传、删除的过程的php代码
2008/09/10 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
将PHP的session数据存储到数据库中的代码实例
2016/06/24 PHP
php实现和c#一致的DES加密解密实例
2017/07/24 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
php开发最强大的IDE编辑的phpstorm 2020.2配置Xdebug调试的详细教程
2020/08/17 PHP
js获取浏览器基本信息大全
2014/11/27 Javascript
jQuery使用removeClass方法删除元素指定Class的方法
2015/03/26 Javascript
jQuery实现的网页竖向菜单效果代码
2015/08/26 Javascript
JavaScript文档碎片操作实例分析
2015/12/12 Javascript
jQuery简单实现彩色云标签效果示例
2016/08/01 Javascript
使用vue2.0创建的项目的步骤方法
2018/09/25 Javascript
JavaScript类的继承操作实例总结
2018/12/20 Javascript
深入理解Node内建模块和对象
2019/03/12 Javascript
vue+iview动态渲染表格详解
2019/03/19 Javascript
微信小程序调用后台service教程详解
2020/11/06 Javascript
[02:54]辉夜杯主赛事第二日败者组 iG.V赛后采访
2015/12/26 DOTA
深入剖析Python的爬虫框架Scrapy的结构与运作流程
2016/01/20 Python
对python中return和print的一些理解
2017/08/18 Python
Python多进程并发与多线程并发编程实例总结
2018/02/08 Python
Python 中Pickle库的使用详解
2018/02/24 Python
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
Python OpenCV调用摄像头检测人脸并截图
2020/08/20 Python
Python Pandas 对列/行进行选择,增加,删除操作
2020/05/17 Python
Dyson加拿大官方网站:购买戴森吸尘器,风扇,冷热器及配件
2016/10/26 全球购物
美国汽车性能部件和赛车零件网站:Vivid Racing
2018/03/27 全球购物
Osklen官方在线商店:巴西服装品牌
2019/04/25 全球购物
中专毕业个人的自荐信格式
2013/09/21 职场文书
资深生产主管自我评价
2013/09/22 职场文书
文明餐桌活动方案
2014/02/11 职场文书
犯错检讨书
2014/02/21 职场文书
职业规划实施方案
2014/06/10 职场文书
伦敦奥运会口号
2014/06/13 职场文书
全运会口号
2014/06/20 职场文书
募捐感谢信
2015/01/22 职场文书
Python 数据科学 Matplotlib图库详解
2021/07/07 Python