Spec-Zone.ru › CakePHP 3.2

Класс 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 Error.

  • 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\Network\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\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
Экземпляр исключения.
строка $method
Имя метода.
целое число $code
Код ошибки.

Возвращает

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

_unwrap()source protected

_unwrap( Exception $exception )

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

Параметры

Исключение $exception
Объект для раскрытия.

Возвращает

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

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–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/3.2/class-Cake.Error.ExceptionRenderer.html

Spec-Zone.ru

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