Spec-Zone.ru › Yii 2.0

Класс yii\web\ErrorAction

Все классы | Свойства | Методы
Наследование yii\web\ErrorAction » yii\base\Action » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/web/ErrorAction.php

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

Для использования ErrorAction необходимо выполнить следующие шаги:

Во-первых, объявите действие типа ErrorAction в методе actions() вашего класса SiteController (или любого другого контроллера, который вы предпочитаете), как показано ниже:

public function actions()
{
    return [
        'error' => ['class' => 'yii\web\ErrorAction'],
    ];
}

Затем создайте файл представления для этого действия. Если маршрут вашего действия по обработке ошибок site/error, то файл представления должен быть views/site/error.php. В этом файле представления доступны следующие переменные:

  • $name: имя ошибки
  • $message: сообщение об ошибке
  • $exception: исключение, обрабатываемое в данный момент

Наконец, настройте компонент приложения "errorHandler" следующим образом,

'errorHandler' => [
    'errorAction' => 'site/error',
]

Общедоступные свойства

Свойство Тип Описание Определено в
$behaviors yii\base\Behavior[] Список присоединённых к этому компоненту поведений yii\base\Component
$controller yii\base\Controller|yii\web\Controller Контроллер, которому принадлежит этот action yii\base\Action
$defaultMessage строка Сообщение, отображаемое, когда сообщение об исключении содержит конфиденциальную информацию. yii\web\ErrorAction
$defaultName строка Название ошибки, когда имя исключения определить невозможно. yii\web\ErrorAction
$id строка ID действия yii\base\Action
$uniqueId строка Уникальный идентификатор этого действия в рамках всего приложения. yii\base\Action
$view строка Файл представления, подлежащий рендерингу. yii\web\ErrorAction

Защищённые свойства

Свойство Тип Описание Определено в
$exception Исключение Объект исключения, обычно заполняется при вызове метода init(). yii\web\ErrorAction

Общедоступные методы

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после создания объекта путём клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Action
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т. е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в null. yii\base\Object
attachBehavior() Присоединяет поведение к этому компоненту. yii\base\Component
attachBehaviors() Присоединяет список поведений к компоненту. yii\base\Component
behaviors() Возвращает список поведений, по которым должен действовать этот компонент. yii\base\Component
canGetProperty() Возвращает значение, указывающее, можно ли прочитать свойство. yii\base\Object
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Object
className() Возвращает полное имя этого класса. yii\base\Object
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. yii\base\Component
getBehavior() Возвращает объект поведения с заданным именем. yii\base\Component
getBehaviors() Возвращает все присоединенные к этому компоненту поведения. yii\base\Component
getUniqueId() Возвращает уникальный ID этого действия в рамках всего приложения. yii\base\Action
hasEventHandlers() Возвращает значение, указывающее, прикреплен ли обработчик к заданному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определен ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() {@inheritdoc} yii\web\ErrorAction
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Присоединяет обработчик событий к событию. yii\base\Component
run() Выполняет действие. yii\web\ErrorAction
runWithParams() Выполняет это действие со указанными параметрами. yii\base\Action
trigger() Срабатывает событие. yii\base\Component

Защищённые методы

Метод Описание Определено в
afterRun() Этот метод вызывается сразу после выполнения run(). yii\base\Action
beforeRun() Этот метод вызывается сразу перед выполнением run(). yii\base\Action
findException() Получает исключение из компонента \yii\web\yii\web\ErrorHandler. yii\web\ErrorAction
getExceptionCode() Получает код из $exception. yii\web\ErrorAction
getExceptionMessage() Возвращает сообщение из $exception только для \yii\web\yii\base\UserException. yii\web\ErrorAction
getExceptionName() Возвращает имя исключения, за которым следует код (если он есть). yii\web\ErrorAction
getViewRenderParams() Создаёт массив параметров, которые будут переданы представлению. yii\web\ErrorAction
renderAjaxResponse() Создаёт строку, представляющую исключение. yii\web\ErrorAction
renderHtmlResponse() Отображает представление, представляющее исключение. yii\web\ErrorAction

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

$defaultMessage публичное свойство

Сообщение, которое будет отображаться, когда сообщение об исключении содержит конфиденциальную информацию. По умолчанию «Произошла внутренняя ошибка сервера».

public string $defaultMessage = null

$defaultName публичное свойство

Имя ошибки, когда имя исключения определить невозможно. По умолчанию «Ошибка».

public string $defaultName = null

$exception защищённое свойство (доступно начиная с версии 2.0.11)

Объект исключения, обычно заполняется при вызове метода init().

См. также [[findException()]] для получения информации о стандартном способе получения исключения.

protected Exception $exception = null

$view публичное свойство

Файл представления, подлежащий отображению. Если не задано, используется значение $id. То есть, если вы назвали действие "error" в "SiteController", то имя представления будет "error", а соответствующий файл представления — "views/site/error.php".

public string $view = null

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

findException() защищённый метод (доступен начиная с версии 2.0.11)

Получает исключение из компонента \yii\web\yii\web\ErrorHandler.

В случае отсутствия исключения в компоненте, считается, что действие вызвало не из обработчика ошибок, а по прямому маршруту, поэтому будет отображаться ошибка '404 Not Found'.

protected Exception findException ( )

getExceptionCode() защищённый метод (доступен начиная с версии 2.0.11)

Получает код из $exception.

protected mixed getExceptionCode ( )

getExceptionMessage() защищённый метод (доступен начиная с версии 2.0.11)

Возвращает сообщение из $exception только для \yii\web\yii\base\UserException.

В других случаях возвращается $defaultMessage.

protected string getExceptionMessage ( )

getExceptionName() защищённый метод (доступен начиная с версии 2.0.11)

Возвращает имя исключения, за которым следует код (если он есть).

protected string getExceptionName ( )

getViewRenderParams() защищённый метод (доступен начиная с версии 2.0.11)

Создаёт массив параметров, которые будут переданы представлению.

protected array getViewRenderParams ( )

init() публичный метод

{@inheritdoc}

public void init ( )

renderAjaxResponse() защищённый метод (доступен начиная с версии 2.0.11)

Создаёт строку, представляющую исключение.

Обычно используется для создания ответа на AJAX-запрос.

protected string renderAjaxResponse ( )

renderHtmlResponse() защищённый метод (доступен начиная с версии 2.0.11)

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

protected string renderHtmlResponse ( )

run() публичный метод

Выполняет действие.

public string run ( )
возвращает string

Содержимое результата

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-web-erroraction.html

Spec-Zone.ru

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