Error handling middleware.
Traps exceptions and converts them into HTML or content-type appropriate error pages using the CakePHP ExceptionRenderer.
$_defaultConfig protected array$exceptionRenderer protected Cake\Error\ExceptionRendererInterface|string|null__construct( string|callable|null $exceptionRenderer null , array $config [] )
Constructor
$exceptionRenderer optional null The renderer or class name to use or a callable factory. If null, Configure::read('Error.exceptionRenderer') will be used.
$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\ExceptionRendererInterfacehandleException( 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 )
Deletes a single config key.
$key Cake\Core\Exception\Exception_configRead( string|null $key )
Reads a config key.
$key _configWrite( string|array $key , mixed $value , boolean|string $merge false )
Writes a config key.
$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 )
Gets/Sets the config.
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 getConfig( string|null $key null )
Returns the config.
Reading the whole config:
$this->getConfig();
Reading a specific value:
$this->getConfig('key'); Reading a nested value:
$this->getConfig('some.nested.key'); $key optional null setConfig( string|array $key , mixed|null $value null , boolean $merge true )
Sets the config.
Setting a specific value:
$this->setConfig('key', $value); Setting a nested value:
$this->setConfig('some.nested.key', $value); Updating multiple config settings at the same time:
$this->setConfig(['one' => 'value', 'another' => 'value']);
$key $value optional null $merge optional true Cake\Core\Exception\Exceptionprotected 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,
] protected Cake\Error\ExceptionRendererInterface|string|null
Exception render.
© 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.4/class-Cake.Error.Middleware.ErrorHandlerMiddleware.html