class ErrorHandler

Error handler.

Properties

protected Container $container Container.
protected bool $disableShutdownHandler Is the shutdown handler disabled?
protected array $handlers Exception handlers.
protected LoggerInterface $logger Logger instance.
protected array $dontLog Exception types that shouldn't be logged.

Methods

__construct(Container|null $container = null)

Constructor.

fallbackHandler()

Adds basic fallback handler to the stack.

register()

Registers the exception handler.

setLogger(Closure|LoggerInterface $logger)

Set logger instance or closure that returns a logger instance.

LoggerInterface
getLogger()

Return logger instance.

dontLog(string|array $exceptionType)

Disables logging for an exception type.

disableLoggingFor(string|array $exceptionType) deprecated

Disables logging for an exception type.

disableShutdownHandler()

Disables the shutdown handler.

handle(string $exceptionType, string|Closure $handler)

Prepends an exception handler to the stack.

clearHandlers(string $exceptionType)

Clears all error handlers for an exception type.

replaceHandlers(string $exceptionType, Closure $handler)

Replaces all error handlers for an exception type with a new one.

clearOutputBuffers()

Clear output buffers.

bool
shouldExceptionBeLogged(Throwable $exception)

Should the exception be logged?

handlerFactory(string $handler)

Creates and returns an error handler instance.

mixed
handleException(string|Closure $handler, Throwable $exception)

Handle the exception.

handler(Throwable $exception)

Handles uncaught exceptions.

Details

at line 75
__construct(Container|null $container = null)

Constructor.

Parameters

Container|null $container Container

at line 91
protected fallbackHandler()

Adds basic fallback handler to the stack.

at line 106
protected register()

Registers the exception handler.

at line 132
setLogger(Closure|LoggerInterface $logger)

Set logger instance or closure that returns a logger instance.

Parameters

Closure|LoggerInterface $logger Logger

at line 142
LoggerInterface getLogger()

Return logger instance.

Return Value

LoggerInterface

at line 157
dontLog(string|array $exceptionType)

Disables logging for an exception type.

Parameters

string|array $exceptionType Exception type or array of exception types

at line 168
disableLoggingFor(string|array $exceptionType) deprecated

deprecated 7.0

Disables logging for an exception type.

Parameters

string|array $exceptionType Exception type or array of exception types

at line 176
disableShutdownHandler()

Disables the shutdown handler.

at line 187
handle(string $exceptionType, string|Closure $handler)

Prepends an exception handler to the stack.

Parameters

string $exceptionType Exception type
string|Closure $handler Exception handler

at line 197
clearHandlers(string $exceptionType)

Clears all error handlers for an exception type.

Parameters

string $exceptionType Exception type

at line 214
replaceHandlers(string $exceptionType, Closure $handler)

Replaces all error handlers for an exception type with a new one.

Parameters

string $exceptionType Exception type
Closure $handler Exception handler

at line 224
protected clearOutputBuffers()

Clear output buffers.

at line 235
protected bool shouldExceptionBeLogged(Throwable $exception)

Should the exception be logged?

Parameters

Throwable $exception An exception object

Return Value

bool

at line 259
protected HandlerInterface handlerFactory(string $handler)

Creates and returns an error handler instance.

Parameters

string $handler Handler class name

Return Value

HandlerInterface

at line 271
protected mixed handleException(string|Closure $handler, Throwable $exception)

Handle the exception.

Parameters

string|Closure $handler Exception handler
Throwable $exception Exceotion

Return Value

mixed

at line 286
handler(Throwable $exception)

Handles uncaught exceptions.

Parameters

Throwable $exception An exception object