没有不值得去解决的问题,也没有不值得去学习的技术!

在 Windows 10、Laravel 6 中使用 PhpRedis PHP 扩展,存储与获取缓存数据

浏览首页,报错:LogicException Please make sure the PHP Redis extension is installed and enabled.请确保已安装并启用 PHP Redis 扩展
1、在将 Redis 与 Laravel 一起使用的时候,有两种方案,一种是安装 PhpRedis PHP 扩展,一种是通过 Composer 安装 predis / predis 包。不过 Predis 已被该软件包的原始作者遗弃,并可能在将来的版本中从 Laravel 中删除。最终决定使用第一种方案。编辑 .env 文件,设置缓存驱动为 redis。以测试 Redis 的使用。


CACHE_DRIVER=redis

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6378
REDIS_DB=4
REDIS_CACHE_DB=5


2、在首页控制器方法中,在缓存中存储与获取数据
<pre class="wp-block-syntaxhighlighter-code">

<?php

namespace App\Http\Controllers;

use Illuminate\Support\Facades\Cache;

class IndexController extends Controller
{
    public function index()
    {
        Cache::put('key', 'value');
        $value = Cache::get('key');
        dd($value);
    }
}


</pre>
3、浏览首页,报错:LogicException Please make sure the PHP Redis extension is installed and enabled.请确保已安装并启用 PHP Redis 扩展。如图1
浏览首页,报错:LogicException Please make sure the PHP Redis extension is installed and enabled.请确保已安装并启用 PHP Redis 扩展
图1
4、Laravel 官方建议通过 PECL 安装并使用 PhpRedis PHP 扩展。打开网址:https://pecl.php.net/package/redis 。选择 Version 5.3.7。下载 redis 5.3.7 for Windows。如图2
Laravel 官方建议通过 PECL 安装并使用 PhpRedis PHP 扩展。打开网址:https://pecl.php.net/package/redis 。选择 Version 5.3.7。下载 redis 5.3.7 for Windows
图2
5、查看 phpinfo,Thread Safety 的值为 enabled。因此,选择 7.4 Thread Safe (TS) x64。如图3
查看 phpinfo,Thread Safety 的值为 enabled。因此,选择 7.4 Thread Safe (TS) x64
图3
6、复制 php_redis.dll 至 C:\php-7.4.27\ext\php_redis.dll 7、编辑 php.ini 文件,启用 PhpRedis PHP 扩展。重启 PHP


extension=redis


8、查看 phpinfo,确认扩展已经安装且启用。如图4
查看 phpinfo,确认扩展已经安装且启用
图4
9、再次浏览首页,打印出获取到的缓存数据:”value”。如图5
再次浏览首页,打印出获取到的缓存数据:"value"
图5
10、查看 Redis 中,配置的缓存数据库为 5。其中存在 key:laravel6_database_laravel6_cache:key,其值为:s:5:”value”;。符合预期。如图6
查看 Redis 中,配置的缓存数据库为 5。其中存在 key:laravel6_database_laravel6_cache:key,其值为:s:5:"value";。符合预期
图6
11、为了避免与 Redis PHP 扩展本身发生类命名冲突,您需要从 app 配置文件的 aliases 数组中删除或重命名 Illuminate \ Support \ Facades \ Redis 外观别名。 通常,您应该完全删除此别名,并且仅在使用 Redis PHP 扩展时通过其完全限定的类名引用 Facade 。


'RedisManager' => Illuminate\Support\Facades\Redis::class,


 

PHP / Laravel / Yii2 老项目维护与长期技术支持

如果你的 PHP / Laravel / Yii2 项目已经上线,但遇到原开发离职、Bug 长期无人修复、接口不稳定、性能下降、代码难以接手等问题,可以联系我做一次远程技术排查。

适合以下情况:
✅ 老旧 PHP 系统无人维护
✅ Laravel / Yii2 项目 Bug 修复
✅ 后台管理系统小功能迭代
✅ RESTful API 接口排查
✅ MySQL / Redis / Nginx 性能问题
✅ 长期远程兼职维护

可先从一次小问题开始:
✅ 线上报错排查
✅ 接口异常分析
✅ 慢查询与性能瓶颈定位
✅ 代码结构初步评估
✅ 部署环境与日志检查

如需咨询,请联系我,并注明:PHP 维护咨询

联系方式:
Telegram:@shuijingwan
微信:13980074657
邮箱:shuijingwanwq@gmail.com

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理