tp5 redis使用

本文详细介绍了如何在ThinkPHP框架中集成Redis缓存服务。包括配置文件创建、辅助函数定义、密码验证及基本操作如设置、获取和删除数据等关键步骤。

1、congif下新建文件reids.php。

<?php
			return [
			    'host' => '127.0.0.1',
			    'port' => '6379',
			];

2、thinkphp下载helper下定义方法

if (!function_exists('redis')) {
		    /**
		     * 获取容器对象实例
		     * @return Container
		     */
		    function redis()
		    {
		        return \module\Redis::redis();
		    }
		}

3、如果redis有密码指到reids.php下设置密码

$con->auth('你的密码');

4、调用

redis()->hmset($token,$user_info);
			$info = redis()->hGetAll($token);
			redis()->del($token);`
### ThinkPHP5 Redis 消息队列使用教程 #### 配置文件设置 为了使 `think-queue` 正常工作,在项目的根目录下找到并编辑配置文件 `config/queue.php` 和 `config/database.php` 来适配 Redis 连接参数。对于 `queue.php` 文件来说,主要关注的是驱动的选择以及对应的连接信息[^2]。 ```php // config/queue.php 示例片段 return [ 'default' => env('QUEUE_DRIVER', 'redis'), 'connections' => [ 'sync' => [], 'database' => [], 'redis' => [ 'driver' => 'redis', 'host' => env('REDIS_HOST', '127.0.0.1'), 'port' => env('REDIS_PORT', 6379), 'password' => env('REDIS_PASSWORD', ''), 'select' => 0, 'timeout' => 0, 'persistent' => false, ], ] ]; ``` #### 创建任务类 通过命令行工具创建一个新的任务类用于定义具体要执行的任务逻辑: ```bash php think make:job SendEmailJob ``` 这将在应用的 `app/job` 目录下生成名为 `SendEmailJob.php` 的新文件。在这个文件里编写具体的业务逻辑代码。 ```php <?php namespace app\job; use think\queue\Job; use think\Queue; class SendEmailJob { public function fire(Job $job, $data){ // 执行发送邮件的具体操作... if(/* 发送成功 */){ $job->delete(); }else{ $job->release(3); // 失败则延迟三秒再次尝试 } } } ``` #### 投放任务至队列 当需要触发某个异步任务时,可以在控制器或者其他地方推送此任务到指定的消息队列中等待被执行: ```php Queue::push(SendEmailJob::class,['email'=>'example@domain.com']); ``` 上述语句会立即将一个包含给定数据的新实例推送到默认队列上;也可以利用 `later()` 方法来设定延时执行时间。 #### 启动消费者监听器 最后一步是在后台启动消费进程以持续监控队列中的待处理项,并适时调用相应的处理器函数完成实际的工作负载。可以通过如下指令开启监听模式: ```bash php think queue:work --daemon ``` 这样就完成了整个基于 ThinkPHP5 平台之上集成 Redis 支持下的消息队列系统的搭建过程。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值