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 Subclasses
Properties summary
Method Summary
-
_displayError() abstract protected
Display an error message in an environment specific way. -
_displayException() abstract protected
Display an exception in an environment specific way. -
_getMessage() protected
Generates a formatted error message -
_logError() protected
Log an error. -
_logException() protected
Handles exception logging -
_requestContext() protected
Get the request context for an error/exception trace. -
_stop() protected
Stop the process. -
getMessageForException() protected
Generate the message for the exception -
handleError() public
Set as the default error handler by CakePHP. -
handleException() public
Handle uncaught exceptions. -
handleFatalError() public
Display/Log a fatal error. -
increaseMemoryLimit() public
Increases the PHP "memory_limit" ini setting by the specified amount in kilobytes
-
mapErrorCode() public static
Map an error code into an Error word, and log location. -
register() public
Register the error and exception handlers. -
wrapAndHandleException() public
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.
Method Detail
_displayError() 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.
_displayException() 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.
_getMessage() protected ¶
_getMessage( Exception $exception )
Generates a formatted error message
Parameters
- Exception $exception
- Exception instance
Returns
Formatted message
_logError() 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
_logException() protected ¶
_logException( Exception $exception )
Handles exception logging
Parameters
- Exception $exception
- Exception instance.
Returns
_requestContext() protected ¶
_requestContext( Cake\Http\ServerRequest
$request )
Get the request context for an error/exception trace.
Parameters
-
Cake\Http\ServerRequest
$request - The request to read from.
Returns
_stop() protected ¶
_stop( integer $code )
Stop the process.
Implemented in subclasses that need it.
Parameters
- integer $code
- Exit code.
getMessageForException() protected ¶
getMessageForException( Exception $exception , boolean $isPrevious = false )
Generate the message for the exception
Parameters
- Exception $exception
- The exception to log a message for.
- boolean $isPrevious optional false
- False for original exception, true for previous
Returns
Error message
handleError() 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 mode is on. And will log errors to Log, when debug mode is off.
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
True if error was handled
handleException() 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
When renderer class not found
See
handleFatalError() 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
increaseMemoryLimit() public ¶
increaseMemoryLimit( integer $additionalKb )
Increases the PHP "memory_limit" ini setting by the specified amount in kilobytes
Parameters
- integer $additionalKb
- Number in kilobytes
mapErrorCode() 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 of error word, and log location.
wrapAndHandleException() 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