Spec-Zone.ru › CakePHP 3.3

Класс ExceptionRenderer

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

Перехватывает и обрабатывает все необработанные исключения. Отображает полезные ошибки фреймворка, когда debug равен true. Когда debug равен false, CakeException будет отображать ошибки 404 или 500. Если возникает необработанное исключение, тип которого ExceptionHandler не знает, оно будет обработано как ошибка 500.

Реализация обработки исключений, специфичных для приложения

Вы можете реализовать обработку исключений, специфичных для приложения, создав подкласс ExceptionRenderer и настроив его в качестве exceptionRenderer в config/error.php

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

Использование подкласса ExceptionRenderer дает вам полный контроль над тем, как отображаются исключения. Вы можете настроить свой класс в файле config/app.php.

Пространство имён: Cake\Error
Расположение: Error/ExceptionRenderer.php

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

  • $controller public
    Cake\Controller\Controller
    Экземпляр контроллера.
  • $error public
    Exception
    Исключение, которое обрабатывается.
  • $method public
    string
    Метод, соответствующий исключению, для которого предназначен этот объект.
  • $template public
    string
    Шаблон для отображения Cake\Core\Exception\Exception

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

  • __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 $exception
Исключение.

_code()source protected

_code( Exception $exception )

Возвращает значение кода ошибки в диапазоне от 400 до 506

Параметры

Exception $exception
Исключение.

Возвращает

целое число
Значение кода ошибки в диапазоне от 400 до 506

_customMethod()source protected

_customMethod( string $method , Exception $exception )

Отображает пользовательский метод/шаблон ошибки.

Параметры

строка $method
Имя метода для вызова.
Exception $exception
Исключение для отображения.

Возвращает

Cake\Network\Response
Ответ для отправки.

_getController()source protected

_getController( )

Возвращает экземпляр контроллера для обработки исключения. Переопределите этот метод в подклассах для настройки используемого контроллера. Этот метод возвращает встроенный ErrorController в обычном случае, или, если ошибка повторяется, будет использован базовый контроллер.

Возвращает

Cake\Controller\Controller

Вызывает

Controller.startup $controller

_message()source protected

_message( Exception $exception , integer $code )

Возвращает сообщение об ошибке.

Параметры

Exception $exception
Исключение.
целое число $code
Код ошибки.

Возвращает

строка
Сообщение об ошибке

_method()source protected

_method( Exception $exception )

Возвращает имя метода

Параметры

Exception $exception
Экземпляр исключения.

Возвращает

строка

_outputMessage()source protected

_outputMessage( string $template )

Генерирует ответ с помощью объекта контроллера.

Параметры

строка $template
Шаблон для отображения.

Возвращает

Cake\Network\Response
Объект ответа, который можно отправить.

_outputMessageSafe()source protected

_outputMessageSafe( string $template )

Более безопасный способ отображения сообщений об ошибках, заменяет все вспомогательные функции базовыми и не вызывает методы компонентов.

Параметры

строка $template
Шаблон для отображения.

Возвращает

Cake\Network\Response
Объект ответа, который можно отправить.

_shutdown()source protected

_shutdown( )

Выполняет события завершения работы.

Вызывает события afterFilter и afterDispatch.

Возвращает

Cake\Network\Response
Ответ для отправки.

_template()source protected

_template( Exception $exception , string $method , integer $code )

Возвращает шаблон для отображения информации об исключении.

Параметры

Exception $exception
Экземпляр исключения.
строка $method
Имя метода.
целое число $code
Код ошибки.

Возвращает

строка
Имя шаблона

_unwrap()source protected

_unwrap( Exception $exception )

Возвращает объект исключения без оберток, если мы имеем дело с объектом ошибки PHP 7.

Параметры

Exception $exception
Объект для извлечения из обертки

Возвращает

Exception|Error

render()source public

render( )

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

Возвращает

Cake\Network\Response
Ответ для отправки.

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

$controllersource

public Cake\Controller\Controller

Экземпляр контроллера.

null

$errorsource

public Exception

Обрабатываемая исключительная ситуация.

null

$methodsource

public string

Метод, соответствующий исключительной ситуации, для которого предназначен этот объект.

''

$templatesource

public string

Шаблон для рендеринга Cake\Core\Exception\Exception

''

© 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/3.3/class-Cake.Error.ExceptionRenderer.html

Spec-Zone.ru

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