在 Yii 2.x 中添加 Redis 支持需配置 redis 组件并注册到应用,确保已安装 redis 扩展、Redis 服务运行,并在 config/web.php 的 components 中配置 hostname、port 等参数,再通过 Yii::$app->redis 调用测试读写。

在 Yii 框架中添加 Redis 支持,核心是配置 Redis 组件并注册到应用中,让控制器、模型等地方能通过 Yii::$app->redis 调用。不同版本(Yii 2 和 Yii 3)略有差异,下面以主流的 Yii 2.x 为例说明(兼容 PHP 7.0+,Redis 扩展已安装)。
确认环境已就绪
添加前先确保:
PHP 已安装 redis 扩展(运行 php -m | grep redis 可验证) Redis 服务正在运行(如本地 127.0.0.1:6379) 项目使用的是 Yii 2.0.12 或更高版本(推荐 2.0.45+)
配置 Redis 组件(main.php 或 web.php)
打开应用配置文件(通常是 config/web.php 或 config/main.php),在 'components' 数组中加入 redis 配置:
'redis' => [ 'class' => 'yiiredisConnection', 'hostname' => '127.0.0.1', 'port' => 6379, 'database' => 0, 'password' => '', // 如有密码请填写],
如果 Redis 启用了认证,务必填上 'password';若使用 Unix socket,可改用 'unixSocket' 参数。
立即学习“PHP免费学习笔记(深入)”;
测试是否可用
在任意控制器或控制台命令中写一段测试代码:
public function actionTestRedis(){ $redis = Yii::$app->redis; $redis->set('test_key', 'hello from yii'); $value = $redis->get('test_key'); var_dump($value); // 输出:string(16) "hello from yii"}
访问对应路由(如 /site/test-redis),看到输出即表示成功接入。
进阶:使用 Redis 作为缓存或会话驱动
除了直接操作,你还可以复用 Redis 组件做更高级用途:
缓存组件:把
'cache' => ['class' => 'yiiredisCache'] 加入 components,自动替换默认文件缓存
'session' => ['class' => 'yiiredisSession']
,让 session 数据存 Redis 队列支持(需额外扩展):配合 yii2-queue 使用 Redis 作为消息队列后端
这些只需换 class 类名,底层仍走上面配好的 redis 连接,无需重复写 host/port。
基本上就这些。不复杂但容易忽略扩展是否启用、密码是否匹配、端口是否被防火墙拦截——配完记得跑个 php yii serve 并测试一次读写。
以上就是php中Yii框架添加redis的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1342088.html
微信扫一扫
支付宝扫一扫