PHP 8.0.12 升级到 PHP 8.1 - 多个模块错误

blu*_*ndr 3 php php-8.1

很长一段时间以来,我一直在使用 XAMPP 对我的开发工作站进行升级,从各个版本 7s 一直到 8.012。

我升级到 8.1 似乎遇到了障碍。

我已经编辑了 apache 配置以使用新版本的 php。将php.ini-development并将其重命名为php.ini,然后取消注释 openssl 扩展在我重新启动 apache 后不起作用:

extension=openssl
Run Code Online (Sandbox Code Playgroud)

php 信息页面中未启用 Openssl:

在此输入图像描述

如果我尝试通过从以前的安装中移动我的扩展来启用 mongodb,然后取消注释扩展php.ini并再次重新启动 apache,我会收到错误:

extension=php_mongodb.dll

在此输入图像描述

更新:我现在发现启用任何 PHP 模块在 PHP 8.1 下都不起作用。

我可以回滚到以前的版本php-8.0.12并再次拥有功能齐全的 php。当我回滚到以前的版本时,启用和禁用 PHP 模块仍然有效。它在 PHP 8.1 下不起作用。

如果可能的话,我想及时了解最新版本!

我使用这个版本的 PHP 做错了什么?为什么我无法启用任何功能?

blu*_*ndr 5

我必须将完整路径设置为 Windows 上的扩展目录。一旦我这样做并重新启动,我就能够启用/禁用扩展。查找这一行php.ini并根据您的需要进行调整:

; On windows:
extension_dir = "C:\xampp\php-8.1.0\ext\"
Run Code Online (Sandbox Code Playgroud)

此设置仅在 Windows 上显得很重要。按照您想要的方式设置该行,重新启动 apache,您就可以开始了!