ZF2异常处理程序支持PHP解析错误

时间:2016-09-21 15:43:15

标签: php zend-framework zend-framework2

产生解析错误时,例如在Controller内部,ZF2异常处理程序捕获它,我只看到

An error occurred during execution; please try again later.
No exception available

如果我在public/index.php内产生解析错误,我可以在浏览器中看到普通的PHP错误,因此PHP设置是正确的。

如何强制ZF2在开发模式下显示如下错误?

1 个答案:

答案 0 :(得分:4)

原来我使用的是view/error/index.phtml(骨架应用程序的一部分)的旧版本,它没有为Error类型的错误做准备(自PHP 7起)并且只处理Exception类型的错误。

必须改变这一行

<?php if(isset($this->exception) && $this->exception instanceof Exception): ?>

到这个

<?php if (isset($this->exception) && ($this->exception instanceof \Exception || $this->exception instanceof \Error)) : ?>