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 相关文章推荐
第六节 访问属性和方法 [6]
Oct 09 PHP
在线短消息收发的程序,不用数据库
Oct 09 PHP
PHP脚本的10个技巧(3)
Oct 09 PHP
用函数读出数据表内容放入二维数组
Oct 09 PHP
php 格式化数字的时候注意数字的范围
Apr 13 PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 PHP
编写Smarty插件在模板中直接加载数据的详细介绍
Jun 26 PHP
PHP中source #N问题的解决方法
Jan 27 PHP
利用php下载xls文件(自己动手写的)
Apr 18 PHP
PHP面向对象精要总结
Nov 07 PHP
Yii模型操作之criteria查找数据库的方法
Jul 15 PHP
PHP xpath()函数讲解
Feb 11 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中改变图片的尺寸大小的代码
2011/07/17 PHP
Could not load type System.ServiceModel.Activation.HttpModule解决办法
2012/12/29 PHP
基于PHP一些十分严重的缺陷详解
2013/06/03 PHP
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
2014/02/24 PHP
php实现session自定义会话处理器的方法
2015/01/27 PHP
Yii框架实现邮箱激活的方法【数字签名】
2016/10/18 PHP
利用PHP访问带有密码的Redis方法示例
2017/02/09 PHP
Extjs407 getValue()和getRawValue()区别介绍
2013/05/21 Javascript
json数据与字符串的相互转化示例
2013/09/18 Javascript
文档对象模型DOM通俗讲解
2013/11/01 Javascript
css样式标签和js语法属性区别
2013/11/06 Javascript
超简单JS二级、多级联动的简单实例
2014/02/18 Javascript
使用JavaScript+canvas实现图片裁剪
2015/01/30 Javascript
详解javascript函数的参数
2015/11/10 Javascript
用jQuery获取table中行id和td值的实现代码
2016/05/19 Javascript
Cookbook组件形式:优化 Vue 组件的运行时性能
2018/11/25 Javascript
js使用文件流下载csv文件的实现方法
2019/07/15 Javascript
详解element-ui中表单验证的三种方式
2019/09/18 Javascript
从零开始在vue-cli4配置自适应vw布局的实现
2020/06/08 Javascript
解决echarts echarts数据动态更新和dataZoom被重置问题
2020/07/20 Javascript
JavaScript Dom实现轮播图原理和实例
2021/02/19 Javascript
python 换位密码算法的实例详解
2017/07/19 Python
Python中fnmatch模块的使用详情
2018/11/30 Python
python去重,一个由dict组成的list的去重示例
2019/01/21 Python
如何利用Python动态模拟太阳系运转
2020/09/04 Python
香港时装购物网站:ZALORA香港
2017/04/23 全球购物
Charlotte Tilbury美国官网:英国美妆品牌
2017/10/13 全球购物
西班牙手机之家:Phone House
2018/10/18 全球购物
《尊严》教学反思
2014/02/11 职场文书
创建学习型党组织实施方案
2014/03/29 职场文书
租房协议书范文
2014/08/20 职场文书
典型事迹材料范文
2014/12/29 职场文书
幼儿园大班教师个人总结
2015/02/05 职场文书
结婚典礼主持词
2015/06/29 职场文书
python 如何做一个识别率百分百的OCR
2021/05/29 Python
MySQL 原理与优化之Limit 查询优化
2022/08/14 MySQL