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树的代码,可以嵌套任意层
Oct 09 PHP
PHP中Session的概念
Oct 09 PHP
利用PHP制作简单的内容采集器的代码
Nov 28 PHP
php中计算时间差的几种方法
Dec 31 PHP
php 面试碰到过的问题 在此做下记录
Jun 09 PHP
php实现两表合并成新表并且有序排列的方法
Dec 05 PHP
PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
May 12 PHP
php同时使用session和cookie来保存用户登录信息的实现代码
May 13 PHP
Yii2中DropDownList简单用法示例
Jul 18 PHP
PHP+JQUERY操作JSON实例
Mar 23 PHP
PHP实现求解最长公共子串问题的方法
Nov 17 PHP
PHP 出现 http500 错误的解决方法
Mar 09 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
ip签名探针
2006/10/09 PHP
php IP及IP段进行访问限制的代码
2008/12/17 PHP
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
php变量范围介绍
2012/10/15 PHP
php-cli简介(不会Shell语言一样用Shell)
2013/06/03 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
2013/06/17 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
2014/06/30 PHP
php数组索引的Key加引号和不加引号的区别
2014/08/19 PHP
CI框架中cookie的操作方法分析
2014/12/12 PHP
PHP PDOStatement::fetchObject讲解
2019/02/01 PHP
javascript模仿msgbox提示效果代码
2008/06/10 Javascript
jquery ajax提交表单数据的两种方式
2009/11/24 Javascript
JQuery 选项卡效果(JS与HTML的分离)
2010/04/01 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
2013/08/11 Javascript
JavaScript隐式类型转换
2016/03/15 Javascript
js如何准确获取当前页面url网址信息
2020/09/13 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
2016/11/09 Javascript
js实现密码强度检验
2017/01/15 Javascript
详解微信小程序-canvas绘制文字实现自动换行
2019/04/26 Javascript
详解JavaScript中的坐标和距离
2019/05/27 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
如何用JS模拟实现数组的map方法
2020/07/30 Javascript
python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
2014/08/25 Python
itchat和matplotlib的结合使用爬取微信信息的实例
2017/08/25 Python
Python排序搜索基本算法之冒泡排序实例分析
2017/12/09 Python
python或C++读取指定文件夹下的所有图片
2019/08/31 Python
python基于opencv实现人脸识别
2021/01/04 Python
HTML如何让IMG自动适应DIV容器大小的实现方法
2020/02/25 HTML / CSS
升职自荐书范文
2013/11/28 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
2014年居委会工作总结
2014/12/09 职场文书
2015年度党风廉政建设工作情况汇报
2015/01/02 职场文书
绿色环保倡议书
2015/04/28 职场文书
销区经理年终述职报告模板
2019/11/28 职场文书
Java 实战项目之家居购物商城系统详解流程
2021/11/11 Java/Android