diff --git a/doc/SUMMARY.md b/doc/SUMMARY.md index e404ca3131..59ac489391 100644 --- a/doc/SUMMARY.md +++ b/doc/SUMMARY.md @@ -28,7 +28,7 @@ * [事件监听](components/event/index.md) * [事件列表](core/events.md) * [中间件](core/middleware.md) -* [全局错误处理](core/handleError.md) +* [全局异常处理](core/handleError.md) * [内部进程间通讯](core/processCommunication.md) * [Server 对象](core/server.md) * [长连接分布式解决方案](core/long-connection-distributed.md) diff --git a/doc/core/handleError.md b/doc/core/handleError.md index 321ecdbd37..29ece7b8e8 100644 --- a/doc/core/handleError.md +++ b/doc/core/handleError.md @@ -1,4 +1,4 @@ -# 错误处理 +# 全局异常处理 [toc] @@ -39,3 +39,40 @@ imi 框架底层支持将错误转为异常(通过`catchLevel`选项控制) 多个异常处理器将按顺序执行,可调用方法`stopPropagation`取消后续异常处理器执行并阻止系统默认的异常处理。 > 请务必确保异常处理器内不要再次抛出异常,做好异常捕获安全处理。 + +### Demo + +```php +# 当 catchLevel 设置为 E_ALL 时,添加以下处理器配合处理错误通知 + +stopPropagation(); + + Log::log(LogLevel::INFO, $errStr); + } + } + + public function handleException(\Throwable $throwable): void + { + // 可以处理更多异常状况... + } +} + +``` +