Spec-Zone.ru › CakePHP 3.7

Класс ErrorHandlerMiddleware

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

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

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

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

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

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

  • _config, _configInitialized

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

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

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

__construct()source public

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

Конструктор

Параметры

string|callable|null $exceptionRenderer необязательно null

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

array $config необязательно []

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

__invoke()source public

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

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

Параметры

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

Возвращает

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

getMessage()source protected

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

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

Параметры

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

Возвращает

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

getMessageForException()source protected

getMessageForException( Exception $exception , boolean $isPrevious = false )

Генерация сообщения для исключения

Параметры

Exception $exception
Исключение, для которого необходимо составить сообщение.
boolean $isPrevious необязательно false
False для исходного исключения, true для предыдущего

Возвращает

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

getRenderer()source protected

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

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

Параметры

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

Возвращает

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 необязательно false

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

Выбрасывает

Cake\Core\Exception\Exception
если происходит попытка переопределения существующей конфигурации
END_OF_DOCUMENT_MARKER

config()source public устаревший

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 необязательный null
Ключ для получения/установки или массив настроек.
mixed|null $value необязательный null
Значение для установки.
boolean $merge необязательный true
Выполнить рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.

Возвращает

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

Исключения

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

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.7/class-Cake.Error.Middleware.ErrorHandlerMiddleware.html

Spec-Zone.ru

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