Spec-Zone.ru › CakePHP 3.4

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

  • render() public
    Отображает ответ для исключения.
END_OF_DOCUMENT_MARKER

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

__construct()source public

__construct( Exception $exception )

Создаёт контроллер для обработки ответа об ошибке. Если ошибка — это Cake\Core\Exception\Exception, она будет преобразована в ошибку с кодом 400 или 500 в зависимости от используемого при создании ошибки кода.

Параметры

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

_code()source protected

_code( Exception $exception )

Получение значения кода ошибки в диапазоне от 400 до 506.

Параметры

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

Возвращает

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

_customMethod()source protected

_customMethod( string $method , Exception $exception )

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

Параметры

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

Возвращает

Cake\Http\Response
Отправляемый ответ.

_getController()source protected

_getController( )

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

Возвращает

Cake\Controller\Controller

Вызывает

Controller.startup $controller

_message()source protected

_message( Exception $exception , integer $code )

Получение сообщения об ошибке.

Параметры

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

Возвращает

string
Сообщение об ошибке

_method()source protected

_method( Exception $exception )

Получение имени метода.

Параметры

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

Возвращает

string

_outputMessage()source protected

_outputMessage( string $template )

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

Параметры

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

Возвращает

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

_outputMessageSafe()source protected

_outputMessageSafe( string $template )

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

Параметры

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

Возвращает

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

_shutdown()source protected

_shutdown( )

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

Вызывает события после фильтрации и после обработки.

Возвращает

Cake\Http\Response
Отправляемый ответ.

_template()source protected

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

Получение шаблона для отображения информации об исключении.

Параметры

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

Возвращает

string
Имя шаблона

_unwrap()source protected

_unwrap( Exception $exception )

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

Параметры

Exception $exception
Объект для извлечения исключения.

Возвращает

Exception|Error

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

Spec-Zone.ru

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