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 > 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
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