Error handling middleware.
Traps exceptions and converts them into HTML or content-type appropriate error pages using the CakePHP ExceptionRenderer.
$_defaultConfig protected array__construct( string|callable|null $renderer null , array $config [] )
Constructor
$renderer optional null The renderer or class name to use or a callable factory.
$config optional [] Configuration options to use. If empty, Configure::read('Error') will be used.
__invoke( Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response , callable $next )
Wrap the remaining middleware with error handling.
$request $response $next getMessage( Psr\Http\Message\ServerRequestInterface $request , Exception $exception )
Generate the error log message.
$request $exception getRenderer( Exception $exception )
Get a renderer instance
$exception Cake\Error\BaseErrorHandlerhandleException( Exception $exception , Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response )
Handle an exception and generate an error response
$exception $request $response logException( Psr\Http\Message\ServerRequestInterface $request , Exception $exception )
Log an error for the exception if applicable.
$request $exception _configDelete( string $key )
Delete a single config key
$key Cake\Core\Exception\Exception_configRead( string|null $key )
Read a config variable
$key _configWrite( string|array $key , mixed $value , boolean|string $merge false )
Write a config variable
$key $value $merge optional false True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false.
Cake\Core\Exception\Exceptionconfig( string|array|null $key null , mixed|null $value null , boolean $merge true )
Reading the whole config:
$this->config();
Reading a specific value:
$this->config('key'); Reading a nested value:
$this->config('some.nested.key'); Setting a specific value:
$this->config('key', $value); Setting a nested value:
$this->config('some.nested.key', $value); Updating multiple config settings at the same time:
$this->config(['one' => 'value', 'another' => 'value']);
$key optional null $value optional null $merge optional true Cake\Core\Exception\ExceptionconfigShallow( string|array $key , mixed|null $value null )
Merge provided config with existing config. Unlike config() which does a recursive merge for nested keys, this method does a simple merge.
Setting a specific value:
$this->config('key', $value); Setting a nested value:
$this->config('some.nested.key', $value); Updating multiple config settings at the same time:
$this->config(['one' => 'value', 'another' => 'value']);
$key $value optional null protected array
Default configuration values.
log Enable logging of exceptions.skipLog List of exceptions to skip logging. Exceptions that extend one of the listed exceptions will also not be logged. Example:
'skipLog' => ['Cake\Error\NotFoundException', 'Cake\Error\UnauthorizedException']
trace Should error logs include stack traces?
[
'skipLog' => [],
'log' => true,
'trace' => false,
]
© 2005–2017 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.
https://api.cakephp.org/3.3/class-Cake.Error.Middleware.ErrorHandlerMiddleware.html