Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento 致命错误:未捕获错误:函数名必须是C:\xampp\htdocs\em0126\app\code\core\Mage\core\Model\Layout中的字符串。php:555堆栈跟踪:#0_Magento_Phpmyadmin_Xampp - Fatal编程技术网

Magento 致命错误:未捕获错误:函数名必须是C:\xampp\htdocs\em0126\app\code\core\Mage\core\Model\Layout中的字符串。php:555堆栈跟踪:#0

Magento 致命错误:未捕获错误:函数名必须是C:\xampp\htdocs\em0126\app\code\core\Mage\core\Model\Layout中的字符串。php:555堆栈跟踪:#0,magento,phpmyadmin,xampp,Magento,Phpmyadmin,Xampp,从XAMPP(本地主机/Magento)访问Magento文件夹时,我遇到以下错误: 致命错误:未捕获错误:函数名必须是中的字符串 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Model\Layout.php:555 堆栈跟踪:#0 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Controller\Varien\Action.php(390): Mage_Core_Model_Layout->ge

从XAMPP(本地主机/Magento)访问Magento文件夹时,我遇到以下错误:

致命错误:未捕获错误:函数名必须是中的字符串 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Model\Layout.php:555 堆栈跟踪:#0 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Controller\Varien\Action.php(390): Mage_Core_Model_Layout->getOutput()#1 C:\xampp\htdocs\em0126\app\code\core\Mage\Install\controllers\WizardController.php(120): Mage_Core_Controller_Varien_Action->renderLayout()#2 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Controller\Varien\Action.php(418): Mage_安装向导控制器->beginAction()#3 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Controller\Varien\Router\Standard.php(250): 法师-核心-控制器-变量-动作->调度(“开始”)#4 C:\xampp\htdocs\em0126\app\code\core\Mage\core\Controller\Varien\Front.php(172): Mage\u Core\u Controller\u Varien\u Router\u Standard->match(对象(Mage\u Core\u Controller\u Request\u Http))\5>C:\xampp\htdocs\em0126\app\code\Core\Mage\Core\Model\app.php(354):Mage\u Core\u Controller\u Varien\u Front->dispatch() C:\xampp\htdocs\em0126\app\Mage.php(683):Mage_Core_Mo in C:\xampp\htdocs\em0126\app\code\core\Mage\core\Model\Layout.php on 第555行

你的解决方案

致命错误:未捕获错误:函数名必须是。。。 app\code\core\Mage\core\Model\Layout.php:555

此错误很容易修复,因为问题出现在以下行中:

$out .= $this->getBlock($callback[0])->$callback[1]();
相反,它应该是:

$out .= $this->getBlock($callback[0])->{$callback[1]}();
在下面给定的链接上找到您的详细解决方案

转到app\code\core\Mage\core\Model\Layout.php第555行和

 change $callback[1] to {$callback[1]}

将第555行更改为:

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

它起作用了。但有一件事我不确定这是否真的是php7。我在同一台服务器上使用相同的文件和配置在我的网站上运行此程序,在不更改该行的情况下,它不会出现任何问题。

这是一个php7问题,因为当我从5.6升级到7.0时,我遇到了此错误。为了解决这个问题,我编辑了核心文件(希望很快会有补丁),或者像之前其他Answer中提到的那样,或者像下面这样:


转到app\code\core\Mage\core\Model\Layout.php第555行

$method = $callback[1];
$out .= $this->getBlock($callback[0])->$method();
这是因为PHP7

不建议编辑核心文件。我们将覆盖它

将此文件
app/code/core/Mage/core/Model/Layout.php
复制到
app/code/local/Mage/core/Model/Layout.php

更改app/code/local/Mage/Core/Model/Layout.php文件(第555行)中的代码

致:


只有在添加layout.php$out时,它才能正常工作。=$this->getBlock($callback[0])->{$callback[1]}();为我工作,可能是一个PHP7版本。一个PHP7版本+1非常好,谢谢!我不知道为什么默认的Magento安装中仍然存在该错误行。他妈的把我揍了一顿谢谢。。这是一个伟大的快速修复:)其他网站可能使用PHP5,而不是PHP7:)你可以创建“本地”文件夹和其他子目录,如果不存在的话。谢谢你真的帮助了我。我花了整整一天的时间试图修复,但这对我有帮助!非常感谢你!
$out .= $this->getBlock($callback[0])->$callback[1]();
$out .= $this->getBlock($callback[0])->{$callback[1]}();