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 相关文章推荐
Discuz! Passport 通行证整合
Mar 27 PHP
php 正则 过滤html 的超链接
Jun 02 PHP
PHP 解决utf-8和gb2312编码转换问题
Mar 18 PHP
PHP file_exists问题杂谈
May 07 PHP
PHP If Else(elsefi) 语句
Apr 07 PHP
php读取本地文件常用函数(fopen与file_get_contents)
Sep 09 PHP
JS异常处理try..catch语句的作用和实例
May 05 PHP
thinkPHP学习笔记之安装配置篇
Mar 05 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
Aug 18 PHP
php通过淘宝API查询IP地址归属等信息
Dec 25 PHP
PHP微信开发之查询微信精选文章
Jun 23 PHP
PHP配合fiddler抓包抓取微信指数小程序数据的实现方法分析
Jan 02 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
PHP4实际应用经验篇(8)
2006/10/09 PHP
深入php self与$this的详解
2013/06/08 PHP
基于php实现随机合并数组并排序(原排序)
2015/11/26 PHP
JavaScript 入门·JavaScript 具有全范围的运算符
2007/10/01 Javascript
浅谈checkbox的一些操作(实战经验)
2013/11/20 Javascript
js禁止回车提交表单的示例代码
2013/12/23 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
JS生成某个范围的随机数【四种情况详解】
2016/04/20 Javascript
真正好用的js验证上传文件大小的简单方法
2016/10/27 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
JavaScript获取URL参数的方法之一
2017/03/24 Javascript
JS移动端/H5同时选择多张图片上传并使用canvas压缩图片
2017/06/20 Javascript
详解Angular 自定义结构指令
2017/06/21 Javascript
webpack将js打包后的map文件详解
2018/02/22 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
2018/10/12 Javascript
JS实现提示框跟随鼠标移动
2019/08/27 Javascript
详解Vue的ref特性的使用
2020/01/24 Javascript
原生JS利用transform实现banner的无限滚动示例代码
2020/06/15 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
2020/11/12 Javascript
python利用matplotlib库绘制饼图的方法示例
2016/12/18 Python
Python读取sqlite数据库文件的方法分析
2017/08/07 Python
django的model操作汇整详解
2019/07/26 Python
Django实现列表页商品数据返回教程
2020/04/03 Python
Python如何对XML 解析
2020/06/28 Python
如何在VSCode下使用Jupyter的教程详解
2020/07/13 Python
python 基于wx实现音乐播放
2020/11/24 Python
python语言time库和datetime库基本使用详解
2020/12/25 Python
python里glob模块知识点总结
2021/01/05 Python
CSS的background属性及CSS3的背景图片设置总结
2016/06/13 HTML / CSS
119消防日活动总结
2014/08/29 职场文书
2014年最新党员对照检查材料汇总
2014/09/15 职场文书
作文评语集锦
2014/12/25 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书
php引用传递
2021/04/01 PHP
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技