Yii2框架redis基本应用示例


Posted in PHP onJuly 13, 2018

本文实例讲述了Yii2框架redis基本应用。分享给大家供大家参考,具体如下:

在应用的时候需要先对yii2进行扩展安装

如果装有composer直接运行

php composer.phar require --prefer-dist yiisoft/yii2-redis

当然也可以本地安装

下载yii2-redis扩展包(https://github.com/yiisoft/yii2-redis )并解压

将解压后的文件移至vebdor/yiisoft命名为yii2-redis

打开vebdor/yiisoft下的extensions.php

添加如下代码

'yiisoft/yii2-redis' =>
 array (
  'name' => 'yiisoft/yii2-redis',
  'version' => '2.0.5.0',
  'alias' =>
  array (
   '@yii/redis' => $vendorDir . '/yiisoft/yii2-redis',
  ),
 ),

最后在config文件下的web.php中添加如下配置项(配置文件目录要写对笔者当时就是因为这个搞错了浪费了一上午时间)

'redis' =>[
      'class' => 'yii\redis\Connection',
      'hostname' => 'localhost', //你的redis地址
      'port' => 6379, //端口
      'database' => 0,
    ]

接下来就可以进行对redis的操作了

以下是几个简单的小实例

1)设置键值

$source = Yii::$app->redis->set('var1','asdasd');

当成功时会返回布尔值

$source = Yii::$app->redis->get('var1');

获取键的值

$source = Yii::$app->redis->del('var1');

删除键

$var2 = Yii::$app->redis->keys("*");

查看所有的键

2)列表

设置列表

$var1 = Yii::$app->redis->lpush("vari","lisr");

取出列表(一段)

$var3 = Yii::$app->redis->lrange("vari",0,2);

对某列表的某索引的值进行修改

$var33 = Yii::$app->redis->lset('vari',21,'2323');

3)哈希

适合存储对象

存储hash

$var4 = Yii::$app->redis->hmset('mioji','name','syc','age','24');

读取hash

$var5 = Yii::$app->redis->hgetall('mioji');

4)集合

设置集合

$var6 = Yii::$app->redis->sadd('mioji1','lgc','lr','yzb','syc');

获取集合成员数

$var60 = Yii::$app->redis->scard('mioji1');

获取集合的成员

$var61 = Yii::$app->redis->smembers('mioji1');

5)有序集合

设置集合中的索引及成员

$var8 = Yii::$app->redis->zadd('mioji2','1','zf','2','ls');

返回集合中成员的个数

$var81 = Yii::$app->redis->zcard('mioji2');

返回指定索引区间内的成员

$var82 = Yii::$app->redis->zrange('mioji2',0,2);

6)发布订阅

$var7 = Yii::$app->redis->psubscribe('redisChat');

这个可以实现聊天室的功能,不过还需要轮询(暂时不做介绍)

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP的ASP防火墙
Oct 09 PHP
php google或baidu分页代码
Nov 26 PHP
php判断输入不超过mysql的varchar字段的长度范围
Jun 24 PHP
php安全之直接用$获取值而不$_GET 字符转义
Jun 03 PHP
国外十大最流行的PHP框架排名
Jul 04 PHP
php中读写文件与读写数据库的效率比较分享
Oct 19 PHP
让CodeIgniter的ellipsize()支持中文截断的方法
Jun 12 PHP
PHP Warning: Module 'modulename' already loaded in问题解决办法
Mar 16 PHP
WordPress中用于获取搜索表单的PHP函数使用解析
Jan 05 PHP
PHP与jquery实时显示网站在线人数实例详解
Dec 02 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
Jun 12 PHP
PHP 对象继承原理与简单用法示例
Apr 21 PHP
Yii2框架实现登陆添加验证码功能示例
Jul 12 #PHP
Yii框架日志记录Logging操作示例
Jul 12 #PHP
php unlink()函数使用教程
Jul 12 #PHP
总结PHP代码规范、流程规范、git规范
Jun 18 #PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
Jun 16 #PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
Jun 16 #PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
Jun 16 #PHP
You might like
PHP cron中的批处理
2008/09/16 PHP
ThinkPHP路由详解
2015/07/27 PHP
PHP 接入支付宝即时到账功能
2016/09/18 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
ThinkPHP5 的简单搭建和使用详解
2018/11/15 PHP
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
jQuery动画效果相关方法实例分析
2015/12/31 Javascript
Linux使用Node.js建立访问静态网页的服务实例详解
2017/03/21 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
vue-router+vuex addRoutes实现路由动态加载及菜单动态加载
2017/09/28 Javascript
详解vue表单——小白速看
2018/04/08 Javascript
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
JQuery判断radio单选框是否选中并获取值的方法
2019/01/17 jQuery
vue+Element-ui实现分页效果
2020/11/15 Javascript
[01:54]胎教DOTA2 准妈妈玩家现身中国区预选赛
2016/06/26 DOTA
python提取页面内url列表的方法
2015/05/25 Python
一个基于flask的web应用诞生 组织结构调整(7)
2017/04/11 Python
深入了解Python中pop和remove的使用方法
2018/01/09 Python
python3实现多线程聊天室
2018/12/12 Python
python实现飞机大战小游戏
2019/11/08 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
python使用yaml 管理selenium元素的示例
2020/12/01 Python
css3实现针线缝合效果(图解步骤)
2013/02/04 HTML / CSS
Grow Gorgeous美国官网:只要八天,体验唤醒毛囊后新生的茂密秀发
2018/06/04 全球购物
丝芙兰墨西哥官网:Sephora墨西哥
2020/05/30 全球购物
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
2015/07/30 面试题
统计员岗位职责
2013/11/14 职场文书
本科生的职业生涯规划范文
2014/01/09 职场文书
毕业生就业意向书
2014/04/01 职场文书
员工薪酬激励方案
2014/06/13 职场文书
党员学习中共十八大思想报告
2014/09/12 职场文书
临床医学生职业规划书范文
2014/10/25 职场文书
2014年乡镇卫生院工作总结
2014/11/24 职场文书
2015年公民道德宣传日活动总结
2015/03/23 职场文书
2019送给家人们的中秋节祝福语
2019/08/15 职场文书
教你用Python爬取英雄联盟皮肤原画
2021/06/13 Python