Spec-Zone.ru › CakePHP 3.6

Класс ErrorHandlerMiddleware

Обработка ошибок посредством middleware.

Перехватывает исключения и преобразует их в страницы ошибок, подходящие по HTML или типу содержимого, используя CakePHP ExceptionRenderer.

Cake\Error\Middleware\ErrorHandlerMiddleware использует Cake\Core\InstanceConfigTrait
Пространство имен: Cake\Error\Middleware
Mixin: \Cake\Core\InstanceConfigTrait
Расположение: Error/Middleware/ErrorHandlerMiddleware.php

Краткое описание свойств

  • $_defaultConfig protected
    array
    Значения конфигурации по умолчанию.
  • $exceptionRenderer protected
    Cake\Error\ExceptionRendererInterface|callable|string|null
    Обработка исключений.

Унаследованные свойства

  • _config, _configInitialized

Краткое описание методов

  • __construct() public
    Конструктор
  • __invoke() public
    Оборачивание оставшихся middleware с обработкой ошибок.
  • getMessage() protected
    Генерация сообщения журнала ошибок.
  • getRenderer() protected
    Получение экземпляра обработчика
  • handleException() public
    Обработка исключения и генерация ответа об ошибке
  • handleInternalError() protected
  • logException() protected
    Регистрация ошибки для исключения, если применимо.

Подробное описание методов

__construct()source public

__construct( string|callable|null $exceptionRenderer = null , array $config = [] )

Конструктор

Параметры

string|callable|null $exceptionRenderer optional null

Обработчик или имя класса для использования или вызываемая фабрика. Если null, будет использоваться Configure::read('Error.exceptionRenderer').

array $config optional []

Параметры конфигурации для использования. Если пусто, будет использоваться Configure::read('Error').

__invoke()source public

__invoke( Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response , callable $next )

Оборачивание оставшихся middleware с обработкой ошибок.

Параметры

Psr\Http\Message\ServerRequestInterface $request
Запрос.
Psr\Http\Message\ResponseInterface $response
Ответ.
callable $next
Обратный вызов для вызова следующего middleware.

Возвращаемое значение

Psr\Http\Message\ResponseInterface
Ответ

getMessage()source protected

getMessage( Psr\Http\Message\ServerRequestInterface $request , Exception $exception )

Генерация сообщения журнала ошибок.

Параметры

Psr\Http\Message\ServerRequestInterface $request
Текущий запрос.
Exception $exception
Исключение, для которого нужно записать сообщение.

Возвращаемое значение

string
Сообщение об ошибке

getRenderer()source protected

getRenderer( Exception $exception )

Получение экземпляра обработчика

Параметры

Exception $exception
Исключение, которое обрабатывается.

Возвращаемое значение

Cake\Error\ExceptionRendererInterface
Обработчик исключений.

Исключения

Exception
Когда класс обработчика не найден.

handleException()source public

handleException( Exception $exception , Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response )

Обработка исключения и генерация ответа об ошибке

Параметры

Exception $exception
Исключение для обработки.
Psr\Http\Message\ServerRequestInterface $request
Запрос.
Psr\Http\Message\ResponseInterface $response
Ответ.

Возвращаемое значение

Psr\Http\Message\ResponseInterface
Ответ

handleInternalError()source protected

handleInternalError( Psr\Http\Message\ResponseInterface $response )

Параметры

Psr\Http\Message\ResponseInterface $response
Ответ

Возвращаемое значение

Psr\Http\Message\ResponseInterface
Ответ

logException()source protected

logException( Psr\Http\Message\ServerRequestInterface $request , Exception $exception )

Регистрация ошибки для исключения, если применимо.

Параметры

Psr\Http\Message\ServerRequestInterface $request
Текущий запрос.
Exception $exception
Исключение, для которого нужно записать сообщение.

Методы, используемые из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Удаляет один ключ конфигурации.

Параметры

string $key
Ключ для удаления.

Исключения

Cake\Core\Exception\Exception
при попытке перезаписи существующей конфигурации

_configRead()source protected

_configRead( string|null $key )

Считывает ключ конфигурации.

Параметры

string|null $key
Ключ для чтения.

Возвращаемое значение

mixed

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge = false )

Записывает ключ конфигурации.

Параметры

string|array $key
Ключ для записи.
mixed $value
Значение для записи.
boolean|string $merge optional false

True для рекурсивного объединения, 'shallow' для простого объединения, false для перезаписи, по умолчанию false.

Исключения

Cake\Core\Exception\Exception
при попытке перезаписи существующей конфигурации

config()source public deprecated

config( string|array|null $key = null , mixed|null $value = null , boolean $merge = true )

Получение/Установка конфигурации.

Использование

Чтение всей конфигурации:

$this->config();

Чтение конкретного значения:

$this->config('key');

Чтение вложенного значения:

$this->config('some.nested.key');

Установка конкретного значения:

$this->config('key', $value);

Установка вложенного значения:

$this->config('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->config(['one' => 'value', 'another' => 'value']);

Устарело

3.4.0 используйте setConfig()/getConfig() вместо этого.

Параметры

string|array|null $key optional null
Ключ для получения/установки или массив конфигураций.
mixed|null $value optional null
Значение для установки.
boolean $merge optional true
Рекурсивно объединить или перезаписать существующую конфигурацию, по умолчанию true.

Возвращаемое значение

mixed
Значение конфигурации, считываемое, или сам объект при операциях записи.

Исключения

Cake\Core\Exception\Exception
При попытке установить недопустимый ключ.
END_OF_DOCUMENT_MARKER ```

configShallow()source public

configShallow( string|array $key , mixed|null $value = null )

Объединить предоставленную конфигурацию с существующей. В отличие от config(), которое выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

Установка определенного значения:

$this->configShallow('key', $value);

Установка вложенного значения:

$this->configShallow('some.nested.key', $value);

Обновление нескольких параметров конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или полный массив конфигурации.
mixed|null $value необязательно null
Значение для установки.

Возвращает


$this

getConfig()source public

getConfig( string|null $key = null , mixed $default = null )

Возвращает конфигурацию.

Использование

Чтение всей конфигурации:

$this->getConfig();

Чтение определенного значения:

$this->getConfig('key');

Чтение вложенного значения:

$this->getConfig('some.nested.key');

Чтение со значением по умолчанию:

$this->getConfig('some-key', 'default-value');

Параметры

string|null $key необязательно null
Ключ для получения или null для всей конфигурации.
mixed $default необязательно null
Значение возврата, когда ключ не существует.

Возвращает

mixed
Значение считываемой конфигурации.

setConfig()source public

setConfig( string|array $key , mixed|null $value = null , boolean $merge = true )

Устанавливает конфигурацию.

Использование

Установка определенного значения:

$this->setConfig('key', $value);

Установка вложенного значения:

$this->setConfig('some.nested.key', $value);

Обновление нескольких параметров конфигурации одновременно:

$this->setConfig(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или полный массив конфигурации.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Выполнять рекурсивное объединение или перезаписывать существующую конфигурацию, по умолчанию true.

Возвращает


$this

Выбрасывает

Cake\Core\Exception\Exception
При попытке установить некорректный ключ.

Подробное описание свойств

$_defaultConfigsource

protected array

Значения конфигурации по умолчанию.

  • log Включить протоколирование исключений.
  • skipLog Список исключений, которые нужно пропустить при протоколировании. Исключения, расширяющие одно из перечисленных исключений, также не будут протоколироваться. Пример:

    'skipLog' => ['Cake\Error\NotFoundException', 'Cake\Error\UnauthorizedException']
  • trace Должны ли журналы ошибок включать трассировки стека?

[
    'skipLog' => [],
    'log' => true,
    'trace' => false,
]

$exceptionRenderersource

protected Cake\Error\ExceptionRendererInterface|callable|string|null

Обработка исключений.

© 2005–present 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.6/class-Cake.Error.Middleware.ErrorHandlerMiddleware.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API