首先要安装一下redis的扩展

composer require yiisoft/yii2-redis

在配置文件中添加redis配置

'components' => [
....
'redis' => [
'class' => 'yii\redis\Connection',
'hostname' => yourname,
'password' => yourPassword,
'port' =>6379,//默认的端口 配置其他端口在这里改
'database' => 0,//使用的第几个DB
],
'redis_1' => [
'class' => 'yii\redis\Connection',
'hostname' => yourname,
'password' => yourPassword,
'port' =>6379,//默认的端口 配置其他端口在这里改
'database' => 1,//使用的第几个DB
],
....
]

使用方法:

//实例化redis
$redis = Yii::$app->redis_1;//使用哪一个redis 如果使用了redis集群 则不配置redis的其他DB

String:

// 设置一个字符串的值
$redis->set('key', 111);
//获取一个字符串的值
echo $redis->get('key'); // 111
// 重复set
$redis->set('key', 222);//

List:

//列表
//存储数据到列表中
$redis->lpush('list', 'js');
$redis->lpush('list', 'python');
$redis->lpush('list', 'php'); //获取列表中所有的值
$redis->lrange('list', 0, -1); //从右侧加入一个
$redis->rpush('list', 'mysql');
$redis->lrange('list', 0, -1); //从左侧弹出一个
$redis->lpop('list');
$redis->lrange('list', 0, -1); //从右侧弹出一个
$redis->rpop('list');
$redis->lrange('list', 0, -1);

HASH

//给hash表中某个key设置value
//如果没有则设置成功,返回1,如果存在会替换原有的值,返回0,失败返回0
$redis->hset('hash', 'key', 'key');
//获取hash中某个key的值
$redis->hget('hash', 'key');
//获取hash中所有的keys
$redis->hkeys('hash');
//获取hash中所有的值 顺序是随机的
$redis->hvals('hash');
//获取一个hash中所有的key和value 顺序是随机的
$redis->hgetall('hash');
//获取hash中key的数量
$redis->hlen('hash');
//删除hash中一个key 如果表不存在或key不存在则返回false
$redis->hdel('hash', 'php');

Set:无序集合

//在集合key中添加value
$redis->sadd('key','value');
//在集合key中移除value
$redis->srem('key','value');

Sorted Set:有序集合

//在集合key中添加value
$redis->zadd('key','1','value');
//在集合key中移除value
$redis->zrem('key','1','value');

注意:集合的值都是会去重的 list不会

Yii2 redis 使用的更多相关文章

  1. Yii2 Redis的使用

    Yii2 redis扩展    下载 将下载的解压,改名为redis,放在vendor\yiisoft\yii2\目录下 包含Connection.php,ActiveRecord.php等文件 修改 ...

  2. Yii2 redis 使用方法

    /** * 基于 yii2.0 redis使用方法 *///项目根目录命令行执行 composer require --prefer-dist yiisoft/yii2-redis; //在配置文件中 ...

  3. Yii2 redis与cache

    原文地址:http://www.myexception.cn/php/1974979.html composer require yiisoft/yii2-redis 安装后使用超简单,打开 comm ...

  4. yii2redis安装

    yii2 – redis 配置 转自:http://www.fancyecommerce.com/2016/05/03/yii2-redis-%E9%85%8D%E7%BD%AE/ 安装redis w ...

  5. Yii2框架与MongoDB拓展、Redis拓展的安装流程

    @author 周煦辰 2016-03-21 这段时间新上了一个项目,使用的是Yii2框架.这里记录一下Yii2框架.Yii2-Mongo拓展.Yii2-Redis拓展等的安装流程.因为使用的系统是W ...

  6. yii2的redis扩展使用

    yii2支持了redis扩展,不需要在本地下载php的扩展库就可以很好的使用 1.下载windows的redis安装包打开cmd,进入安装包目录,使用redis-server.exe redis.co ...

  7. Yii2.0源码阅读-PHP如何与redis通信?

    PHP与Redis可以通过socket进行通信,前提是PHP需要实现Redis的协议 RESP协议描述: 字符串 \r\n : 表示一个正确的状态信息,具体信息是'+'后面的字符(Simple Str ...

  8. yii2.0 手动配置redis

    手动安装yii2.0-redis扩展 1.点击下载:yii2.0-redis扩展 2.把下载的扩展文件放到vendor/yiisoft/下,命名为yii2-redis 3.修改vender/yiiso ...

  9. YII2 搭建redis拓展(教程)

    安装redis扩展: 1.通过composer进行安装,到项目根目录cmd运行(推荐) php composer.phar require --prefer-dist yiisoft/yii2-red ...

随机推荐

  1. JVM内存空间划分与作用

    虚拟机栈:Stack Fame 栈桢 程序计数器(Program Counter): 本地方法栈:主要用于处理本地方法 堆(Heap): JVM管理的最大一块内存空间 方法区(Method Area) ...

  2. ActiveMQ持久化

    ActiveMQ中,持久化是值对消息数据的持久化.在ActiveMQ中,默认的消息是保存在内存中的.当内存容量不足的时候,或ActiveMQ正常关闭的时候,会将内存中的未处理的消息持久化到磁盘中.具体 ...

  3. 新概念英语第二册Lesson5:No wrong numbers

    Lesson 5 No wrong numbers 无错号之虞 First listen and then answer the question. 听录音,然后回答以下问题. What does ' ...

  4. 卸载node和npm

    sudo npm uninstall npm -g yum remove nodejs npm -y

  5. javascript取模运算是怎么算的?其实是取余数

    问到是否整除,这里记录下取模 比如120分钟是不是整点?120%60 === 0 为整点 javascript取模运算是一个表达式的值除以另一个表达式的值,并返回余数. 取模在js里就是取余数的意思. ...

  6. WebMercator和geographic互相转换

    方法1:esri的sdk中包含的方法:esri.geometry.geographicToWebMercator() 方法2:自己转换 //经纬度转Web墨卡托 function lonLat2Web ...

  7. 获取IFC构件的位置数据、方向数据

    获取IFC构件的位置数据.方向数据 std::map<int, shared_ptr<BuildingEntity>> map_buildingEntity = b_model ...

  8. Qt编写自定义控件71-圆弧进度条

    一.前言 现在web形式的图表框架非常流行,国产代表就是echart,本人用过几次,三个字屌爆了来形容,非常强大,而且易用性也非常棒,还是开源免费的,使用起来不要太爽,内置的各种图表和仪表盘等非常丰富 ...

  9. F5负载均衡 MIBs bigip oid

    F5 MIBs       分组bigip-ltmpool-stat           oid=".1.3.6.1.4.1.3375.2.2.5.2.3.1.1" name=&q ...

  10. html 图标和文字一行对齐

    原图: 效果图: 备注:vertical-align:middle <div> <p class="time tl-size12" style="pad ...