Класс ExceptionRenderer
Обработчик исключений.
Захватывает и обрабатывает все необработанные исключения. Отображает полезные ошибки фреймворка, когда debug > 1. Когда debug < 1, CakeException отобразит ошибки 404 или 500. Если брошено необработанное исключение, и это тип, которого ExceptionHandler не знает, оно будет обработано как ошибка 500.
Реализация обработки исключений, специфичных для приложения
Вы можете реализовать обработку исключений, специфичных для приложения, несколькими способами:
- Создайте метод AppController::appError();
- Создайте подкласс ExceptionRenderer и настройте его как
Exception.renderer
Использование AppController::appError();
Этот метод контроллера вызывается вместо обработки исключений по умолчанию. Он получает брошенное исключение в качестве единственного аргумента. Вы должны реализовать обработку ошибок в этом методе.
Использование подкласса ExceptionRenderer
Использование подкласса ExceptionRenderer дает вам полный контроль над тем, как отображаются исключения. Вы можете настроить свой класс в вашем core.php, с помощью Configure::write('Exception.renderer', 'MyClass'); Все пользовательские обработчики исключений должны располагаться в app/Lib/Error.
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Error/ExceptionRenderer.php
Краткое описание свойств
- Экземпляр контроллера.
$controllerpublic -
$errorpublicОбрабатываемое исключение.Exception -
$methodpublicМетод, соответствующий исключению, для которого предназначен этот объект.string -
$templatepublicШаблон для отображения CakeExceptionstring
Краткое описание методов
- __construct() public
Создаёт контроллер для обработки ответа об ошибке. Если ошибка является CakeException, она будет преобразована в ошибку кода 400 или 500 в зависимости от кода, используемого для создания ошибки.
- _cakeError() protectedОбщий обработчик внутренних ошибок фреймворка CakePHP.
- _getController() protected
Получение экземпляра контроллера для обработки исключения. Переопределите этот метод в подклассах для настройки используемого контроллера. Этот метод возвращает встроенный
CakeErrorControllerпо умолчанию, или, если ошибка повторяется, используется контроллер без параметров. - _outputMessage() protectedГенерация ответа с помощью объекта контроллера.
- _outputMessageSafe() protected
Более безопасный способ отображения сообщений об ошибках, заменяет все помощники базовыми и не вызывает методы компонентов.
- _shutdown() protectedВыполнение событий завершения работы.
- error400() publicУдобный метод для отображения страницы серии 400.
- error500() publicУдобный метод для отображения страницы 500.
- pdoError() publicУдобный метод для отображения PDOException.
- render() publicОтображает ответ на исключение.
Подробное описание методов
__construct()source public
__construct( Exception|ParseError $exception )
Создаёт контроллер для обработки ответа об ошибке. Если ошибка является CakeException, она будет преобразована в ошибку кода 400 или 500 в зависимости от кода, используемого для создания ошибки.
Параметры
- Exception|ParseError
$exception - Исключение
_cakeError()source protected
_cakeError( CakeException $error )
Общий обработчик внутренних ошибок фреймворка CakePHP.
Параметры
-
CakeException$error - Исключение для отображения.
_getController()source protected
_getController( Exception $exception )
Получение экземпляра контроллера для обработки исключения. Переопределите этот метод в подклассах для настройки используемого контроллера. Этот метод возвращает встроенный CakeErrorController по умолчанию, или, если ошибка повторяется, используется контроллер без параметров.
Параметры
- Exception
$exception - Исключение, для которого требуется контроллер.
Возвращает
Controller_outputMessage()source protected
_outputMessage( string $template )
Генерация ответа с помощью объекта контроллера.
Параметры
- string
$template - Шаблон для отображения.
_outputMessageSafe()source protected
_outputMessageSafe( string $template )
Более безопасный способ отображения сообщений об ошибках, заменяет все помощники базовыми и не вызывает методы компонентов.
Параметры
- string
$template - Шаблон для отображения
_shutdown()source protected
_shutdown( )
Выполнение событий завершения работы.
Вызывает события afterFilter и afterDispatch.
error400()source public
error400( Exception $error )
Удобный метод для отображения страницы серии 400.
Параметры
- Exception
$error - Исключение для отображения.
error500()source public
error500( Exception $error )
Удобный метод для отображения страницы 500.
Параметры
- Exception
$error - Исключение для отображения.
pdoError()source public
pdoError( PDOException $error )
Удобный метод для отображения PDOException.
Параметры
- PDOException
$error - Исключение для отображения.
Подробное описание свойств
$methodsource
public string
Метод, соответствующий исключению, для которого предназначен этот объект.
''
© 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/2.10/class-ExceptionRenderer.html