0
我用Yii2与我的框架,因为我喜欢的ActiveRecord和QueryBuilder的。 Yii2 Official docs 介绍如何使用它。Yii2在ActiveRecord的第三方系统中。如何处理异常
它的工作原理,但Yii2需要PHP异常和警告的所有控制在ErrorHandler.php
/**
* Register this error handler
*/
public function register()
{
ini_set('display_errors', false);
set_exception_handler([$this, 'handleException']);
if (defined('HHVM_VERSION')) {
set_error_handler([$this, 'handleHhvmError']);
} else {
set_error_handler([$this, 'handleError']);
}
if ($this->memoryReserveSize > 0) {
$this->_memoryReserve = str_repeat('x', $this->memoryReserveSize);
}
register_shutdown_function([$this, 'handleFatalError']);
}
我不知道该如何处理它。
例如,我有DBException形式的Yii。如果我设置了我自己的set_exception_handler
,它将有非常差的有关异常的信息:只有代码和消息。这将是非常困难的调试它没有准备好的查询,查询参数等
如果我使用Yii2的异常处理程序 - 我要重写所有我与Yii2例外框架。这不太好,我也不喜欢Yii2字母和异常模板。我需要从Yii2开始使用DB。
你有任何想法如何,我可以解决这种情况呢?
我认为你曲解它的工作方式。 Yii异常并不包含比默认PHP异常更多的信息,并且Yii错误处理程序处理每个异常,因此您不必重写代码。 Profiler会记录Yii 2中的SQL查询。 – Bizley
我不太确定你想在这里取得成就。你想保留默认的PHP错误处理程序或什么? – xReprisal