Class BaseErrorHandler

Base error handler that provides logic common to the CLI + web error/exception handlers.

Subclasses are required to implement the template methods to handle displaying the errors in their environment.

Direct known subclasses

Cake\Console\ConsoleErrorHandler, Cake\Error\ErrorHandler
Abstract
Namespace: Cake\Error
Located at Error/BaseErrorHandler.php

Method Detail

_displayErrorsource abstract protected

_displayError( array $error , boolean $debug )

Display an error message in an environment specific way.

Subclasses should implement this method to display the error as desired for the runtime they operate in.

Parameters

array $error
An array of error data.
boolean $debug
Whether or not the app is in debug mode.

_displayExceptionsource abstract protected

_displayException( Exception $exception )

Display an exception in an environment specific way.

Subclasses should implement this method to display an uncaught exception as desired for the runtime they operate in.

Parameters

Exception $exception
The uncaught exception.

_getMessagesource protected

_getMessage( Exception $exception )

Generates a formatted error message

Parameters

Exception $exception
Exception instance

Returns

string
Formatted message

_logErrorsource protected

_logError( string $level , array $data )

Log an error.

Parameters

string $level
The level name of the log.
array $data
Array of error data.

Returns

boolean
bool

_logExceptionsource protected

_logException( Exception $exception )

Handles exception logging

Parameters

Exception $exception
Exception instance.

Returns

boolean
bool

_stopsource protected

_stop( integer $code )

Stop the process.

Implemented in subclasses that need it.

Parameters

integer $code
Exit code.

handleErrorsource public

handleError( integer $code , string $description , string|null $file null , integer|null $line null , array|null $context null )

Set as the default error handler by CakePHP.

Use config/error.php to customize or replace this error handler. This function will use Debugger to display errors when debug > 0. And will log errors to Log, when debug == 0.

You can use the 'errorLevel' option to set what type of errors will be handled. Stack traces for errors can be enabled with the 'trace' option.

Parameters

integer $code
Code of error
string $description
Error description
string|null $file optional null
File on which error occurred
integer|null $line optional null
Line that triggered the error
array|null $context optional null
Context

Returns

boolean
True if error was handled

handleExceptionsource public

handleException( Exception $exception )

Handle uncaught exceptions.

Uses a template method provided by subclasses to display errors in an environment appropriate way.

Parameters

Exception $exception
Exception instance.

Throws

Exception
When renderer class not found

See

http://php.net/manual/en/function.set-exception-handler.php

handleFatalErrorsource public

handleFatalError( integer $code , string $description , string $file , integer $line )

Display/Log a fatal error.

Parameters

integer $code
Code of error
string $description
Error description
string $file
File on which error occurred
integer $line
Line that triggered the error

Returns

boolean
bool

mapErrorCodesource public static

mapErrorCode( integer $code )

Map an error code into an Error word, and log location.

Parameters

integer $code
Error code to map

Returns

array
Array of error word, and log location.

registersource public

register( )

Register the error and exception handlers.

wrapAndHandleExceptionsource public

wrapAndHandleException( Exception|Error $exception )

Checks the passed exception type. If it is an instance of Error then, it wraps the passed object inside another Exception object for backwards compatibility purposes.

Parameters

Exception|Error $exception
The exception to handle

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.1/class-Cake.Error.BaseErrorHandler.html