Spec-Zone.ru › CakePHP 3.5

Класс ExceptionRenderer

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

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

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

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

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

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

Cake\Error\ExceptionRenderer реализует Cake\Error\ExceptionRendererInterface
Пространство имён: 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
Исключение.

_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
Объект для разворачивания

Возвращает

Исключение|Ошибка
END_OF_DOCUMENT_MARKER

render()source public

render( )

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

Возвращает

Cake\Http\Response
Ответ, который нужно отправить.

Реализация

Cake\Error\ExceptionRendererInterface::render()

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

$controllersource

public Cake\Controller\Controller

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

$errorsource

public Exception

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

$methodsource

public string

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

''

$templatesource

public string

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

''

© 2005–2018 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.5/class-Cake.Error.ExceptionRenderer.html

Spec-Zone.ru

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