6

我正在使用名为 Rollbar 的 SaaS 错误和异常日志记录服务。在我的代码中,我有一个Rollbar静态对象,可用于向服务报告异常。

例如:

try {
    ...
    throw new SomeException();
    ...
} catch (SomeException $e) {
    Rollbar::report_exception($e);
}

我的问题是:我可以实例化一个异常而不抛出它,就好像它是任何其他普通对象一样,并且有任何警告吗?

我想做这样的事情:

if($api_response_ok) {
    // Do some stuff
    ...
} else {
    Rollbar::report_exception(new ApiException($api_error_msg));
}

// Script execution continues...
4

2 回答 2

7

是的,例外就像任何其他对象一样。

于 2013-07-11T09:47:05.167 回答
1

异常只是扩展异常类的对象。它们只会在被抛出时中断脚本执行。

$exception = new Exception('Die');
//Does not exit here
throw $exception;
//Will exit here
于 2013-07-11T09:48:13.767 回答