PHP Catchable fatal error: Object of class ClassDefinition could not be converted to string Concrete.php

PHP Catchable fatal error: Object of class ClassDefinition could not be converted to string Concrete.php

在 pimcore 版本:3.1.1(构建:3543)上,我在 php.log 中收到以下错误,但在 pimcore debug.log.

中没有错误
[29-Jan-2016 16:28:13 Europe/Berlin] PHP Catchable fatal error:  Object of class Pimcore\Model\Object\ClassDefinition could not be converted to string in /opt/bitnami/apps/pimcore/htdocs/pimcore/models/Webservice/Data/Object/Concrete.php on line 104

我从自定义 Web 服务收到 HTTP 500 内部服务器错误响应。

我该如何调查?这个错误是否已经有了解决方案?

产生错误(Concrete.php)的pimcore源代码行如下:

throw new \Exception("No element [ " . $element->name . " ] of type [ " . $element->type . " ] found in class definition " . $class);

看来是错误处理造成的。

该错误(https://github.com/pimcore/pimcore/issues/422)现已解决,计划在Pimcore 4.0.0

中发布

为了调查,我使用了 error_logget_classgettype PHP 函数:

error_log(" found in class definition [ " . get_class($class));
error_log("variable 'class' type = " . gettype($class));
error_log("'class->name' = " . $class->name);

感谢@fusion3k 帮助识别给出错误的代码行的正确部分和语法 get_class($class)