Класс ExceptionRenderer
Обработчик исключений.
Захватывает и обрабатывает все необработанные исключения. Отображает полезные ошибки фреймворка, когда debug равен true. Когда debug равен false, CakeException будет отображать ошибки 404 или 500. Если возникает необработанное исключение, тип которого ExceptionHandler не знает, оно будет обработано как ошибка 500.
Реализация обработки исключений, специфичных для приложения
Вы можете реализовать обработку исключений, специфичных для приложения, создав подкласс ExceptionRenderer и настроив его в качестве exceptionRenderer в config/error.php
Использование подкласса ExceptionRenderer
Использование подкласса ExceptionRenderer даёт вам полный контроль над тем, как отображаются исключения. Вы можете настроить свой класс в вашем файле config/app.php.
- Cake\Error\ExceptionRenderer реализует Cake\Error\ExceptionRendererInterface
Краткое описание свойств
- Экземпляр контроллера.
$controllerpublic -
$errorpublicИсключение, которое обрабатывается.Exception -
$methodpublicМетод, соответствующий исключению, для которого предназначен этот объект.string -
$templatepublicШаблон для отображения Cake\Core\Exception\Exceptionstring
Краткое описание методов
- __construct() public
Создаёт контроллер для отображения ответа на ошибку. Если ошибка является Cake\Core\Exception\Exception, она будет преобразована в ошибку с кодом 400 или 500 в зависимости от кода, используемого для создания ошибки.
- _code() protectedПолучает значение кода ошибки в диапазоне от 400 до 506
- _customMethod() protectedОтображает пользовательский метод/шаблон ошибки.
- _getController() protected
Получает экземпляр контроллера для обработки исключения. Переопределите этот метод в подклассах, чтобы настроить используемый контроллер. Этот метод возвращает встроенный
ErrorControllerпо умолчанию, или если ошибка повторяется, используется контроллер без настроек. - _message() protectedПолучить сообщение об ошибке.
- _method() protectedПолучить имя метода
- _outputMessage() protectedГенерирует ответ с использованием объекта контроллера.
- _outputMessageSafe() protected
Более безопасный способ отображения сообщений об ошибках, заменяет все помощники базовыми и не вызывает методы компонентов.
- _shutdown() protectedВыполняет события завершения работы.
- _template() protectedПолучить шаблон для отображения информации об исключении.
- _unwrap() protected
Возвращает объект исключения без оберток, в случае работы с объектом ошибки PHP 7
- render() publicОтображает ответ на исключение.
Подробное описание методов
__construct()source public
__construct( Exception $exception )
Создаёт контроллер для отображения ответа на ошибку. Если ошибка является Cake\Core\Exception\Exception, она будет преобразована в ошибку с кодом 400 или 500 в зависимости от кода, используемого для создания ошибки.
Параметры
- Исключение
$exception - Исключение.
_code()source protected
_code( Exception $exception )
Получает значение кода ошибки в диапазоне от 400 до 506
Параметры
- Исключение
$exception - Исключение.
Возвращает
целое числоЗначение кода ошибки в диапазоне от 400 до 506
_customMethod()source protected
_customMethod( string $method , Exception $exception )
Отображает пользовательский метод/шаблон ошибки.
Параметры
- строка
$method - Имя метода, который нужно вызвать.
- Исключение
$exception - Исключение для отображения.
Возвращает
Cake\Http\ResponseОтправляемый ответ.
_getController()source protected
_getController( )
Получает экземпляр контроллера для обработки исключения. Переопределите этот метод в подклассах, чтобы настроить используемый контроллер. Этот метод возвращает встроенный ErrorController по умолчанию, или если ошибка повторяется, используется контроллер без настроек.
Возвращает
Cake\Controller\ControllerВызывает
Controller.startup $controller_message()source protected
_message( Exception $exception , integer $code )
Получить сообщение об ошибке.
Параметры
- Исключение
$exception - Исключение.
- целое число
$code - Код ошибки.
Возвращает
строкаСообщение об ошибке
_method()source protected
_method( Exception $exception )
Получить имя метода
Параметры
- Экземпляр исключения
$exception - Экземпляр исключения.
Возвращает
строка_outputMessage()source protected
_outputMessage( string $template )
Генерирует ответ с использованием объекта контроллера.
Параметры
- строка
$template - Шаблон для отображения.
Возвращает
Cake\Http\ResponseОбъект ответа, который можно отправить.
_outputMessageSafe()source protected
_outputMessageSafe( string $template )
Более безопасный способ отображения сообщений об ошибках, заменяет все помощники базовыми и не вызывает методы компонентов.
Параметры
- строка
$template - Шаблон для отображения.
Возвращает
Cake\Http\ResponseОбъект ответа, который можно отправить.
_shutdown()source protected
_shutdown( )
Выполняет события завершения работы.
Вызывает события afterFilter и afterDispatch.
Возвращает
Cake\Http\ResponseОтвет для отправки.
_template()source protected
_template( Exception $exception , string $method , integer $code )
Получить шаблон для отображения информации об исключении.
Параметры
- Исключение
$exception - Экземпляр исключения.
- строка
$method - Имя метода.
- целое число
$code - Код ошибки.
Возвращает
строкаИмя шаблона
_unwrap()source protected
_unwrap( Exception $exception )
Возвращает объект исключения без оберток, в случае работы с объектом ошибки PHP 7
Параметры
- Исключение
$exception - Объект для обработки
Возвращает
Исключение|Ошибкаrender()source public
render( )
Отображает ответ для исключения.
Возвращает
Cake\Http\ResponseОтправляемый ответ.
Реализация
Cake\Error\ExceptionRendererInterface::render() Подробное описание свойств
$methodsource
public string
Метод, соответствующий исключению, для которого предназначен этот объект.
''
© 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.ExceptionRenderer.html