Zend框架 - 如何停止执行并重定向到错误控制器

时间:2011-03-27 08:42:15

标签: zend-framework error-handling

我想捕捉php错误,所以我使用 set_error_handler('handler_function')当我回显错误消息'Zend_Controller_Response_Exception',并显示消息'无法发送标题;当我使用以下行

时,会抛出已发送的标题
$fc=Zend_Controller_Front::getInstance();
$fc->getResponse()->setBody($error);

发生错误'调用非对象的

的setBody方法

我试图从错误处理程序中抛出一个异常,但这取决于在errorController中显示bootstrapping之后直接显示bootstrapping之前发生的错误 我使用$ fc-> throwExceptions(false)来确保它将向错误控制器发送异常

当我在错误处理程序中什么都不做时,继续执行

我需要的是有一个地方来处理所有错误

如果有一种方法可以重定向到错误控制器,并且参数中的错误很好

1 个答案:

答案 0 :(得分:2)

IMO处理这些错误的最佳方法是注册错误处理程序,将任何错误/致命错误转换为异常。我猜这个回复还没有创建。您必须使用$ fc的setResponse()方法来创建新响应。我猜想转换为异常应该在任何情况下都有效。与Zend类的异常相同。