laravel reids 配置及使用

2024-03-26 07:12
文章标签 配置 使用 laravel reids

本文主要是介绍laravel reids 配置及使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先保证自己的reids是否启动成功,端口号是否正确

laravel 根目录composer require predis/predis安装predis 包

config/queue.php配置:

'redis' => ['driver' => 'redis','connection' => 'default',
//  'queue' => env('REDIS_QUEUE', 'default'),'queue' => '{default}','retry_after' => 90,'block_for' => null,'after_commit' => false,
]

confing/darabaes文件

'default' => ['url' => env('REDIS_URL'),'host' => env('REDIS_HOST', '127.0.0.1'),'password' => env('REDIS_PASSWORD', null),'port' => env('REDIS_PORT', '6379'),'database' => env('REDIS_DB', '0'),],

.env文件

QUEUE_CONNECTION=redisREDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

字符串类型

  public function testStringRedis(){// 字符串类型
//        $redis = Redis::connection();
//        $redis->set("string_name", "我是字符串类型的值");
//        dd($redis->get("string_name"));// 设置有效期,单位是秒(S)
//        $redis = Redis::connection();
//        $redis->setex('string_name', 50, '我是字符串类型的值s'); // 设置有效期为50秒的键值
//        dd($redis->get("string_name"));// 设置有效期,但是是毫秒(ms) 50000/1000 = 50
//        $redis = Redis::connection();
//        $redis->psetex('string_name', 50000, '我是字符串类型的值ms'); // 设置有效期为50秒的键值
//        dd($redis->get("string_name"));// 带条件的存储// Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在时,为 key 设置指定的值。
//        $redis = Redis::connection();
//        $redis->setnx('string_name', '我是字符串类型的值_setnx_1');
//        dd($redis->get("string_name"));// 删除
//        $redis = Redis::connection();
//        $redis->del('string_name');
//        dd($redis->get("string_name"));// 是否存在if (Redis::exists('string_name')) {$value = Redis::get("string_name");dd($value);} else {dd("从数据库里面取值");}}

hash类型

 // 测试redis的基础类型hashpublic function testHashRedis(){// hash
//        $redis = Redis::connection();
//        $redis->hset('test1', 'key1', 'v1');
//        $redis->hset('test1', 'key2', 'v2');
//        dd($redis->hget('test1', 'key1'));// 增加一个元素
//        Redis::hset("test", "key1", "v1_new");
//        dd(Redis::hget("test", "key3"));// 添加一个元素,判断//Redis::hsetnx("test", "key4", "v4");// hmset/hmget 存取多个元素到hash表
//        Redis::hmset('test', array('key5' => 'v5', 'key6' => 'v6'));
//        dd(Redis::hmget('test', array('key5', 'key6')));// 删除// Redis::hdel('test', 'key1');// 返回hash的长度
//        dd(Redis::hlen('test'));// 返回hash表中的所有key
//        dd(Redis::hkeys('test'));// 返回hash表中的所有value
//        dd(Redis::hvals('test'));// 获取 hash 中所有的key-value
//        dd(Redis::hgetall('test'));// 返回hash表中的指定key是否存在if (Redis::hexists('test', 'key1')) {dd(Redis::hget("test", "key1"));} else {dd("不存在,可以从数据库取");}dd(111);}

list类型

 // 测试redis的list类型public function testListRedis(){// 左添加 在左(头部)添加数据到list中  不存在时创建  返回值为添加元素后list的长度
//        Redis::lpush('list', 1);
//        Redis::lpush('list', 2);
//        Redis::lpush('list', 3);// 左添加 在左(头部)添加数据到list1中  不存在时不创建  返回0
//        Redis::lpushx('list1', 3);// 右添加, 在右(尾部)添加数据到list中  不存在时创建  返回值为添加元素后list的长度
//        Redis::rpush('list', 4);//在右(尾部)添加数据到list中  不存在时不创建  返回0
//        Redis::rpushx("list1", 3);// 从左(头部)取出list中数据 返回值为取出的数据 若不存在当前key的话,返回nul// 取出的是头部第一个元素,就删除了此元素
//        dd(Redis::lpop('list'));// 4.从右(尾部)取出list中数据 返回值为取出的数据// 取出的是尾部第一个元素,就删除了此元素
//        dd(Redis::rpop('list'));// 获取该key中所有数据 是个数组
//        dd(Redis::lrange('list', 0, -1));// 获取key为list的list集合中 索引为0的数据
//        dd(Redis::lindex('list', 0));// 将list集合中索引为0的value值改为3
//        Redis::lset("list", 0, 3);// 获取该list的长度
//        dd(Redis::llen('list'));// 只保留索引0到索引1的value值 其余的都删除
//        Redis::lpush('list', 4);
//        Redis::lpush('list', 5);
//        Redis::lpush('list', 6);
//        Redis::ltrim("list", 0, 1);// 删除list列表右边的最后一个元素将其追加到list1列表,list1不存在会创建  返回值为那个元素的value值Redis::rpoplpush('list','list1');dd(1111111);}

这篇关于laravel reids 配置及使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/847675

相关文章

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

Spring StateMachine实现状态机使用示例详解

《SpringStateMachine实现状态机使用示例详解》本文介绍SpringStateMachine实现状态机的步骤,包括依赖导入、枚举定义、状态转移规则配置、上下文管理及服务调用示例,重点解... 目录什么是状态机使用示例什么是状态机状态机是计算机科学中的​​核心建模工具​​,用于描述对象在其生命

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

prometheus如何使用pushgateway监控网路丢包

《prometheus如何使用pushgateway监控网路丢包》:本文主要介绍prometheus如何使用pushgateway监控网路丢包问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录监控网路丢包脚本数据图表总结监控网路丢包脚本[root@gtcq-gt-monitor-prome