当前位置: 技术文章>> 升级到Magento 2.4.x后PHP致命错误“调用未定义的函数str_contains()”

文章标题:升级到Magento 2.4.x后PHP致命错误“调用未定义的函数str_contains()”
  • 文章分类: Magento
  • 25655 阅读
系统学习magento二次开发,推荐小册:《Magento中文全栈二次开发 》

本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。


当Magento商家尝试升级到Magento 2.4.x时,他们可能会遇到以下错误

“调用未定义的函数 Magento\Framework\Filesystem\Directory\str_contains() in <...>/magento/vendor/magento/framework/Filesystem/Directory/DenyListPathValidator.php:74”

导致此错误的原因是 PHP 8 支持 str_contains() 函数,并且 Magento 版本 2.4.3 和 2.3.7-p1 与 PHP 7.4 兼容。但是,此问题将在即将发布的 Magento 2.4.4、2.4.3-p1 和 2.3.7-p2 中修复。

升级到Magento 2.4.x后,如何修复对未定义函数str_contains()的PHP致命错误调用?

步骤1:打开终端并从Magento根文件夹运行以下命令。

composer require symfony/polyfill-php80

步骤2:然后,运行Magento安装程序升级命令以验证问题是否已解决

php bin/magento setup:upgrade

结论:

通过这样做,您可以在升级Magento 2版本后消除PHP致命错误。


推荐文章