AC-17975:PHP 8.5兼容性问题影响CLI命令、类别编辑、设计配置和客户登录
AC-17975修补程序修复了使用PHP 8.5时,Adobe Commerce 2.4.9中的CLI命令、类别编辑、设计配置和AJAX客户登录失败的问题。 安装Quality Patches Tool (QPT) 1.1.83时,此修补程序可用。 修补程序ID为AC-17975。 请注意,此问题计划在Adobe Commerce 2.4.9-p1和2.4.10中修复。
受影响的产品和版本
为Adobe Commerce版本创建了修补程序:
- Adobe Commerce(所有部署方法) 2.4.9
与Adobe Commerce版本兼容:
- Adobe Commerce(所有部署方法) 2.4.9
NOTE
该修补程序可能适用于具有新Quality Patches Tool发行版本的其他版本。 要检查修补程序是否与您的Adobe Commerce版本兼容,请将
magento/quality-patches包更新到最新版本,并在Quality Patches Tool:搜索修补程序页面上检查兼容性。 使用修补程序ID作为搜索关键字来查找修补程序。问题
当Adobe Commerce 2.4.9在PHP 8.5上运行时,CLI命令、类别编辑、设计配置和AJAX客户登录会失败。
先决条件:
已安装PHP 8.5。
重现步骤:
-
运行以下CLI命令:
code language-none bin/magento --version -
在店面,当启用客户CAPTCHA进行登录和签出时,完成签出并在签出期间登录。
-
在“管理员”中,当类别属性
frontend_input设置为null时打开类别。 -
在Admin中,转到Content > Design > Configuration,然后在 Action 列中单击商店视图的Edit。
预期的结果:
所有操作均成功完成。
实际结果:
操作失败,并出现错误,例如:
Exception #0 (Exception): Deprecated Functionality: Using null as an array offset is deprecated, use an empty string instead
/var/www/html/vendor/magento/framework/App/Config/ScopeCodeResolver.php on line 62
report.CRITICAL: Exception: Deprecated Functionality: Using null as the key parameter for array_key_exists() ... in module-captcha/Helper/Data.php on line 92
There is an error in vendor/magento/framework/Setup/Mvc/MvcApplication.php at line: 170
Undefined constant "Magento\Framework\Setup\Mvc\GLOB_BRACE"
Deprecated Functionality: Using null as an array offset is deprecated, use an empty string instead in
var/www/html/app/code/Magento/Catalog/Model/Category/DataProvider.php on line 41
应用修补程序
要应用单独的修补程序,请根据您的部署方法使用以下链接:
- Adobe Commerce或Magento Open Source内部部署: Quality Patches Tool指南中的Quality Patches Tool >使用情况
- 云基础架构上的Adobe Commerce: Commerce on Cloud Infrastructure指南中的升级和修补程序>应用修补程序
相关阅读
要了解有关Quality Patches Tool的更多信息,请参阅:
recommendation-more-help
commerce-operations-help-tools