PHP 8.2 (Windows) 安装 Redis 扩展最新教程

🚀 PHP 8.2 (Windows) 安装 Redis 扩展最新教程

随着 PHP 版本的迭代,很多旧的扩展下载源可能还没来得及更新正式包。如果您升级到了 PHP 8.2 ,在常规下载地址找不到对应的 php_redis.dll 是正常的。

本文将教您如何从 PECL 官方快照库 中下载并安装适配 PHP 8.2 的 Redis 扩展。

📋 第一步:确认 PHP 8.2 环境详情

在下载之前,必须精确匹配以下三个参数,否则扩展无法加载:

  1. 线程安全 (TS/NTS)
  2. 架构 (x64/x86)
  3. 编译器版本 (VS16/VS17)

打开 PowerShell 或 CMD,运行:

powershell 复制代码
php -i | findstr "Thread Safety"
php -i | findstr "Architecture"
php -i | findstr "Compiler"

典型输出示例(请记录您的实际结果):

  • Thread Safety => enabled (代表需要 TS 版本)
  • Architecture => x64
  • Compiler => VS16 (PHP 8.0-8.2 通常使用 VS16,部分新版可能是 VS17)

💡 提示 :如果您使用的是 phpstudy、xampp 等集成环境,通常在"切换版本"或"扩展管理"里能看到这些信息。如果是手动安装的 PHP 8.2,大概率是 TS, x64, VS16


📥 第二步:下载 PHP 8.2 专用的 Redis DLL

✅ 推荐下载地址

请直接访问以下 PECL 库:

👉 https://pecl.php.net/package/redis/

👉 https://pecl.php.net/package/igbinary/ 建议一起安装

🔍 如何选择文件?

在页面中找到文件名包含 8.2 的 zip 包。文件名格式通常如下:
php_redis-[版本号]-[PHP版本]-[TS/NTS]-[编译器]-[架构].zip

根据您的环境选择(假设您是 TS, x64, VS16):

  • 寻找类似:php_redis-5.3.7-8.2-ts-vs16-x64.zip
  • 或者更新的版本:php_redis-5.3.8-8.2-ts-vs16-x64.zip

注意

  • 如果您的 PHP 是 NTS ,请下载带 nts 字样的包。
  • 如果页面中没有 vs16,只有 vs17,且您的 PHP 也是 vs17,则选 vs17。编译器版本必须一致

图片流程

第一步

第二步


🔧 第三步:安装配置

  1. 解压文件

    下载完成后,解压 ZIP 包。您会看到:

    • php_redis.dll (核心文件,必须)
    • php_igbinary.dll (依赖文件,强烈建议一起安装,能提升性能)
  2. 复制到 ext 目录

    找到 PHP 8.2 安装目录下的 ext 文件夹。

    • 例如:D:\php\php8.2\ext
    • php_redis.dllphp_igbinary.dll 复制进去。
  3. 修改 php.ini

    打开 PHP 8.2 对应的 php.ini 文件,添加或修改以下两行(建议先启用 igbinary,再启用 redis):

    ini 复制代码
    extension=php_igbinary
    extension=php_redis

    (如果文件中已有 extension=redis 但被注释,去掉分号即可;如果没有,请在文件末尾新增)

  4. 保存并重启

    • 保存 php.ini
    • 如果是命令行使用,新开一个终端窗口即可。
    • 如果是 Web 服务 (Apache/Nginx/IIS),务必重启 Web 服务

✅ 第四步:验证安装

运行以下命令检查:

powershell 复制代码
php -m | findstr redis
  • 成功 :输出 redis,且没有任何 Warning 报错。
  • 失败
    • 如果报 Unable to load dynamic library:通常是 TS/NTS 选错,或者 VS16/VS17 不匹配。请回到第二步重新核对下载。
    • 如果报 Cannot find module:检查 dll 是否真的放进了 ext 目录。

您也可以创建一个 info.php 文件测试:

php 复制代码
<?php
phpinfo();
?>

在浏览器访问该文件,搜索 "redis",如果出现红色的 Redis 配置板块,说明安装完美成功!


🎉 最后:运行 Composer

现在您的 PHP 8.2 环境已经完美支持 Redis,回到项目目录再次执行:

powershell 复制代码
composer install

之前的 BadFunctionCallException: not support: redis 错误将彻底消失,项目初始化流程会顺利走完。


💡 常见问题 Q&A

Q: 为什么 pecl.php.net 上找不到下载按钮?

A: pecl.php.net 主要提供源码包(.tgz)和文档。Windows 用户需要的预编译 .dll 文件是由 PHP 官方团队构建并托管在 windows.php.net 上的。

Q: 需要安装 php_igbinary.dll 吗?

A: 虽然不是强制的,但 Redis 扩展官方强烈推荐安装 igbinary 作为序列化驱动,它能显著提高 Redis 读写性能并减少内存占用。如果在下载包里看到了它,请务必一并安装并在 php.ini 中启用。


祝您开发愉快!

相关推荐
码哥字节7 小时前
AI一天出百本书,写不出我被Redis坑的那三天三夜
redis·ai编程工具
fangjianj8 小时前
windows环境反弹shell
linux·windows·web安全
有味道的男人8 小时前
得物详情 API|支持实时价格、成色、鉴别服务数据
windows·python·api
北京盛世宏博9 小时前
物联网传感器通信协议:帧字段规划、CRC 校验、异常包过滤方案
网络·物联网·php
老王的笔记v9 小时前
46期 Windows超级管理器 垃圾清理 预装卸载与系统优化工具箱
windows·系统架构
三8449 小时前
PHP Session 反序列化:防御加固、审计套路与总结
web安全·php·安全加固·session反序列化
中科三方10 小时前
DNS拨测到底在拨测什么?
开发语言·github·php·dns·云拨测
企业通信技术笔记10 小时前
企业IM内外网隔离部署:DNS、证书、WebSocket与跨网接口设计
websocket·网络协议·架构·php·信息与通信
张人玉10 小时前
基于 C# / .NET 8 + Windows Forms + SQLite 的桌面银行业务演示系统——华夏示范银行管理系统
windows·sqlite·c#·.net