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。

重现步骤:

  1. 运行以下CLI命令:

    code language-none
    bin/magento --version
    
  2. 在店面,当启用客户CAPTCHA进行登录和签出时,完成签出并在签出期间登录。

  3. 在“管理员”中,当类别属性frontend_input设置为null时打开类别。

  4. 在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

应用修补程序

要应用单独的修补程序,请根据您的部署方法使用以下链接:

相关阅读

要了解有关Quality Patches Tool的更多信息,请参阅:

recommendation-more-help
commerce-operations-help-tools