【问题标题】:Magento Error: Function name must be a string inMagento 错误:函数名称必须是字符串
【发布时间】:2020-05-26 06:28:27
【问题描述】:

您好,我有以下错误,有人可以帮我做什么吗?非常感谢您的帮助

致命错误:未捕获错误:函数名称必须是 /home/httpd/vhosts/domain/shop.domain/app/code/core/Mage/Core/Model/Layout.php 中的字符串:529 堆栈跟踪:# 0 /home/httpd/vhosts/domain/shop.domain/app/code/core/Mage/Core/Controller/Varien/Action.php(391): Mage_Core_Model_Layout->getOutput() #1 /home/httpd/vhosts/ domain/shop.domain/app/code/core/Mage/Cms/Helper/Page.php(132): Mage_Core_Controller_Varien_Action->renderLayout() #2 /home/httpd/vhosts/domain/shop.domain/app/code/ core/Mage/Cms/Helper/Page.php(52): Mage_Cms_Helper_Page->_renderPage(Object(Mage_Cms_IndexController), 'shopper_home_2c...') #3 /home/httpd/vhosts/domain/shop.domain/app/code /core/Mage/Cms/controllers/IndexController.php(45): Mage_Cms_Helper_Page->renderPage(Object(Mage_Cms_IndexController), 'shopper_home_2c...') #4 /home/httpd/vhosts/domain/shop.domain/app/ code/core/Mage/Core/Controller/Varien/Action.php(420):/home/httpd/vhosts/domain/shop.domain/app/code/core/Mage/Core/Model/Layout.p中的Mage_Cms_IndexContro hp 在 529 行

【问题讨论】:

  • 将相应的代码粘贴到该错误会很好。

标签: php magento magento-1.7


【解决方案1】:

发生这种情况是因为在 PHP 7 中,您需要明确说明您要将 $callback 变量作为方法(函数)调用。因此,代码的原始行如下所示(文件app/code/core/Mage/Core/Model/Layout.php):

$out .= $this->getBlock($callback[0])->$callback[1]();

为了让它在最新的 PHP 版本上工作,我们需要用这个替换这段代码:

$out .= $this->getBlock($callback[0])->{$callback[1]}();

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多