我的问题只发生在我的直播系统上。该系统与zend2和PHP7一起工作。问题是,我的warning.log中包含以下消息:
2017-07-10T08:43:50+02:00错误:帧X的预期数组{“代码”:0,"File":"vendor/zendframework/zend-log/src/Formatter/Base.php",“行”:105}
X是介于0到25之间的一个数字。在这些无数错误的末尾,我得到了另一个错误:
2017-07-10T10:29:34+02:00错误:无法写{“代码”:0,"File":"vendor/zendframework/zend-log/src/Formatter/Base.php",“行”:111}
我没有看到一个正确的堆栈跟踪来查看这是从哪里来的,而且我也无法在我的本地dev机器上重新处理这个问题。
任何帮助都将不胜感激。
编辑:大学告诉我,这个错误消息来自于PHP7的C级。有谁知道如何得到正确的堆栈跟踪吗?或者问题可能是什么?
我试图用
...try{
return (string) $value;
} catch(\Throwable $e){
file_put_contents('error.txt',var_export($e,true),FILE_APPEND);
file_put_contents('value.txt',var_export($value,true),FILE_APPEND);
return (string) $value;
}但似乎这个错误是无法捕捉到的。这表明我学院的信息是正确的。
发布于 2017-07-24 12:57:06
你尝试/抓住的一个想法:
Zend\Stdlib\ErrorHandler::start(E_ALL);
$return = (string) $value;
$exception = Zend\Stdlib\ErrorHandler::stop();
file_put_contents('error.txt', var_export($exception, true), FILE_APPEND);
file_put_contents('value.txt', var_export($value, true), FILE_APPEND);
return $return;https://stackoverflow.com/questions/45007234
复制相似问题