首先要安装一下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. 即时通信系统IM--XMPP

    即时通讯(Instant Messaging)是目前Internet上最为流行的通讯方式,各种各样的即时通讯软件也层出不穷:服务提供商也提供了越来越丰富的通讯服务功能. 不容置疑,Internet已经 ...

  2. 下周文件ie 谷歌兼容性处理

    https://blog.csdn.net/u014628388/article/details/81738704 问题描述window.URL.createObjectURL()可以直接生成blob ...

  3. 【转载】 linux dig 命令使用方法

    原文地址: https://www.imooc.com/article/26971?block_id=tuijian_wz 作者:ibeautiful来源:慕课网 ------------------ ...

  4. FastDFSClient工具类

    import org.csource.common.NameValuePair;import org.csource.fastdfs.ClientGlobal;import org.csource.f ...

  5. 使用java 执行ping命令

    借助 Runtime.getRuntime().exec() 可以运行一个windows的exe程序如图,使用java运行 ping 192.168.2.106,返回这样的字符串   1 2 3 4 ...

  6. 宣化上人:大佛顶首楞严经四种清净明诲浅释(1)(转自学佛网:http://www.xuefo.net/nr/article23/230609.html)

    唐天竺·沙门般剌密帝译 宣化上人主讲 一九八三年四月十七日晚讲于万佛圣城 四种清净明诲,真实不虚 楞严经里的四种清净明诲:断淫.断杀.断偷.断妄,是息息相关的.若犯淫戒,就容易犯杀戒,也容易犯盗戒.妄 ...

  7. 报错:Error, CM server guid updated, expected xxxxx, received xxxxx (未解决)

    报错背景: CDH断电重启后,cloudera-scm-server启动报错, cloudera-scm-server 已死,但 pid 文件仍存 由于没有成熟的解决方案,于是我就重新安装了MySQL ...

  8. JS获当前网页元素高度offsetHeight

    本文测试的是offsetHeight,获取网页中某元素的高度,单位是像素,获取的类型是整型,可以进行数字运算.如图,网页中的元素本身的高度包括,自身的内容+padding+border,而margin ...

  9. 【Leetcode_easy】925. Long Pressed Name

    problem 925. Long Pressed Name solution1: class Solution { public: bool isLongPressedName(string nam ...

  10. NGUI无法显示

    早上起来发现 ,NGUI无法显示,后来发现是场景Camera的 depth =0 : 要设置depth=-1. 原来相机之间也有渲染层级