Класс ExceptionRenderer
Обработчик исключений.
Захватывает и обрабатывает все необработанные исключения. Отображает полезные ошибки фреймворка, когда debug > 1. Когда debug < 1, CakeException будет отображать ошибки 404 или 500. Если брошено неперехваченное исключение, тип которого неизвестен обработчику исключений, оно будет обработано как ошибка 500.
Реализация обработки исключений, специфичных для приложения
Вы можете реализовать обработку исключений, специфичных для приложения, несколькими способами:
- Создайте метод AppController::appError();
- Создайте подкласс ExceptionRenderer и настройте его как
Exception.renderer
Использование AppController::appError();
Этот метод контроллера вызывается вместо стандартной обработки исключений. Он получает брошенное исключение в качестве единственного аргумента. Вы должны реализовать свою обработку ошибок в этом методе.
Использование подкласса ExceptionRenderer
Использование подкласса ExceptionRenderer предоставляет вам полный контроль над тем, как отображаются исключения. Вы можете настроить свой класс в вашем файле core.php с помощью Configure::write('Exception.renderer', 'MyClass'); Все пользовательские обработчики исключений должны размещаться в app/Lib/Error.
Авторское право: Авторское право (с) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение Cake/Error/ExceptionRenderer.php
Подробное описание метода
__constructsource public
__construct( Exception $exception )
Создаёт контроллер для обработки ответа об ошибке. Если ошибка является CakeException, она будет преобразована в ошибку кода 400 или 500, в зависимости от кода, используемого для создания ошибки.
Параметры
- Исключение
$exception - Исключение
_cakeErrorsource protected
_cakeError( CakeException $error )
Общий обработчик внутренних ошибок фреймворка, которые может генерировать CakePHP.
Параметры
-
CakeException$error - Исключение, которое необходимо отобразить.
_getControllersource protected
_getController( Exception $exception )
Получает экземпляр контроллера для обработки исключения. Переопределите этот метод в подклассах, чтобы настроить используемый контроллер. Этот метод обычно возвращает встроенный CakeErrorController, или, если ошибка повторяется, будет использован контроллер без дополнительных настроек.
Параметры
- Исключение
$exception - Исключение, для которого требуется контроллер.
Возвращает
ControllerКонтроллер
_outputMessagesource protected
_outputMessage( string $template )
Генерирует ответ с помощью объекта контроллера.
Параметры
- строка
$template - Шаблон для отображения.
_outputMessageSafesource protected
_outputMessageSafe( string $template )
Более безопасный способ отображения сообщений об ошибках, заменяет все помощники на базовые и не вызывает методы компонентов.
Параметры
- строка
$template - Шаблон для отображения
error400source public
error400( Exception $error )
Метод для удобного отображения страницы серии 400.
Параметры
- Исключение
$error - Исключение для отображения.
error500source public
error500( Exception $error )
Удобный метод для отображения страницы 500.
Параметры
- Исключение
$error - Исключение для отображения.
pdoErrorsource public
pdoError( PDOException $error )
Удобный метод для отображения PDOException.
Параметры
- PDOException
$error - Исключение для отображения.
Краткое описание свойств
© 2005–2016 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.
http://api.cakephp.org/2.7/class-ExceptionRenderer.html