Spec-Zone.ru › Yii 2.0

Класс yii\web\Controller

Все классы | Свойства | Методы | События
Наследование yii\web\Controller » yii\base\Controller » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable, yii\base\ViewContextInterface
Подклассы yii\debug\controllers\DefaultController, yii\debug\controllers\UserController, yii\gii\controllers\DefaultController, yii\rest\ActiveController, yii\rest\Controller
Доступен с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/web/Controller.php

Controller — базовый класс веб-контроллеров.

Для получения более подробной информации и использования Controller, обратитесь к статье руководства по контроллерам.

Публичные свойства

Свойство Тип Описание Определено
$action yii\base\Action Действие, которое в настоящее время выполняется. yii\base\Controller
$actionParams массив Параметры, связанные с текущим действием. yii\web\Controller
$behaviors yii\base\Behavior[] Список поведений, прикрепленных к этому компоненту yii\base\Component
$defaultAction строка Идентификатор действия, используемый, когда идентификатор действия не указан в запросе. yii\base\Controller
$enableCsrfValidation булево Включить проверку CSRF для действий в этом контроллере. yii\web\Controller
$id строка Идентификатор этого контроллера. yii\base\Controller
$layout null|строка|false Имя макета, применяемого к представлениям этого контроллера. yii\base\Controller
$module yii\base\Module Модуль, к которому принадлежит этот контроллер. yii\base\Controller
$modules yii\base\Module[] Все родительские модули, в которых находится этот контроллер. yii\base\Controller
$route строка Маршрут (ID модуля, ID контроллера и ID действия) текущего запроса. yii\base\Controller
$uniqueId строка Идентификатор контроллера, префикс которого — идентификатор модуля (если таковой имеется). yii\base\Controller
$view yii\base\View|yii\web\View Объект представления, который можно использовать для отображения представлений или файлов представлений. yii\base\Controller
$viewPath строка Директория, содержащая файлы представлений для этого контроллера. yii\base\Controller

Публичные методы

Метод Описание Определено в
__call() Вызывает метод с указанным именем, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после создания объекта путем клонирования существующего. yii\base\Component
__construct() yii\base\Controller
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в значение null. yii\base\Object
actions() Объявляет внешние действия для контроллера. yii\base\Controller
afterAction() Этот метод вызывается сразу после выполнения действия. yii\base\Controller
asJson() Отправляет данные в формате JSON. yii\web\Controller
asXml() Отправляет данные в формате XML. yii\web\Controller
attachBehavior() Присоединяет поведение к этому компоненту. yii\base\Component
attachBehaviors() Присоединяет список поведений к компоненту. yii\base\Component
beforeAction() Этот метод вызывается непосредственно перед выполнением действия. yii\web\Controller
behaviors() Возвращает список поведений, по которым должен вести себя этот компонент. yii\base\Component
bindActionParams() Связывает параметры с действием. yii\web\Controller
canGetProperty() Возвращает значение, указывающее, может ли свойство быть прочитано. yii\base\Object
canSetProperty() Возвращает значение, указывающее, может ли свойство быть установлено. yii\base\Object
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
createAction() Создаёт действие на основе данного идентификатора действия. yii\base\Controller
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. yii\base\Component
findLayoutFile() Находит соответствующий файл макета. yii\base\Controller
getBehavior() Возвращает объект поведения с указанным именем. yii\base\Component
getBehaviors() Возвращает все присоединенные к этому компоненту поведения. yii\base\Component
getModules() Возвращает все родительские модули этого контроллера. yii\base\Controller
getRoute() Возвращает маршрут текущего запроса. yii\base\Controller
getUniqueId() Возвращает уникальный идентификатор контроллера. yii\base\Controller
getView() Возвращает объект представления, который можно использовать для рендеринга представлений или файлов представлений. yii\base\Controller
getViewPath() Возвращает каталог, содержащий файлы представлений для этого контроллера. yii\base\Controller
goBack() Перенаправляет браузер на последнюю посещённую страницу. yii\web\Controller
goHome() Перенаправляет браузер на главную страницу. yii\web\Controller
hasEventHandlers() Возвращает значение, указывающее, есть ли обработчик, прикрепленный к указанному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует объект. yii\base\Object
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Присоединяет обработчик событий к событию. yii\base\Component
redirect() Перенаправляет браузер на указанный URL. yii\web\Controller
refresh() Обновляет текущую страницу. yii\web\Controller
render() Рендерит представление и применяет макет, если он доступен. yii\base\Controller
renderAjax() Рендерит представление в ответ на AJAX-запрос. yii\web\Controller
renderContent() Рендерит статическую строку, применяя макет. yii\base\Controller
renderFile() Рендерит файл представления. yii\base\Controller
renderPartial() Рендерит представление без применения макета. yii\base\Controller
run() Выполняет запрос, указанный в терминах маршрута. yii\base\Controller
runAction() Выполняет действие внутри этого контроллера с указанным идентификатором действия и параметрами. yii\base\Controller
setView() Устанавливает объект представления, который будет использоваться этим контроллером. yii\base\Controller
setViewPath() Устанавливает каталог, содержащий файлы представлений. yii\base\Controller
trigger() Вызывает событие. yii\base\Component

События

Событие Тип Описание Определено в
EVENT_AFTER_ACTION yii\base\ActionEvent Событие, поднимаемое сразу после выполнения действия контроллера. yii\base\Controller
EVENT_BEFORE_ACTION yii\base\ActionEvent Событие, поднимаемое сразу перед выполнением действия контроллера. yii\base\Controller

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

$actionParams общедоступное свойство

Параметры, связанные с текущим действием.

public array $actionParams = []

$enableCsrfValidation общедоступное свойство

Включить ли проверку CSRF для действий в этом контроллере. Проверка CSRF включена только если это свойство и yii\web\Request::$enableCsrfValidation оба имеют значение true.

public boolean $enableCsrfValidation = true

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

asJson() общедоступный метод (доступен с версии 2.0.11)

Отправка данных в формате JSON.

Этот метод является сокращением для отправки данных в формате JSON. Он вернёт компонент приложения response после настройки формата format и установки данных data, которые должны быть отформатированы. Типичное использование:

return $this->asJson($data);

См. также:

  • yii\web\Response::$format
  • yii\web\Response::FORMAT_JSON
  • yii\web\JsonResponseFormatter
общедоступный yii\web\Response asJson ( $data )
$data mixed

Данные, которые должны быть отформатированы.

return yii\web\Response

Ответ, настроенный на отправку $data в формате JSON.

asXml() общедоступный метод (доступен с версии 2.0.11)

Отправка данных в формате XML.

Этот метод является сокращением для отправки данных в формате XML. Он вернёт компонент приложения response после настройки формата format и установки данных data, которые должны быть отформатированы. Типичное использование:

return $this->asXml($data);

См. также:

  • yii\web\Response::$format
  • yii\web\Response::FORMAT_XML
  • yii\web\XmlResponseFormatter
общедоступный yii\web\Response asXml ( $data )
$data mixed

Данные, которые должны быть отформатированы.

return yii\web\Response

Ответ, настроенный на отправку $data в формате XML.

beforeAction() общедоступный метод

Этот метод вызывается непосредственно перед выполнением действия.

Метод вызовет событие EVENT_BEFORE_ACTION. Возвращаемое значение метода определит, должно ли действие продолжить выполнение.

В случае, если действие не должно выполняться, обработка запроса должна быть выполнена внутри beforeAction кода путём предоставления необходимых вывода или перенаправления запроса. В противном случае ответ будет пустым.

Если вы переопределяете этот метод, ваш код должен выглядеть следующим образом:

public function beforeAction($action)
{
    // your custom code here, if you want the code to run before action filters,
    // which are triggered on the [[EVENT_BEFORE_ACTION]] event, e.g. PageCache or AccessControl

    if (!parent::beforeAction($action)) {
        return false;
    }

    // other custom code here

    return true; // or false to not run the action
}
общедоступный boolean beforeAction ( $action )
$action yii\base\Action

Действие, которое должно быть выполнено.

return boolean

Должно ли действие продолжить выполнение.

bindActionParams() общедоступный метод

Связывает параметры с действием.

Этот метод вызывается yii\base\Action при запуске с заданными параметрами. Этот метод проверяет имена параметров, необходимые действию, и возвращает предоставленные параметры в соответствии с требованиями. Если какой-либо параметр отсутствует, будет выброшено исключение.

общедоступный массив bindActionParams ( $action, $params )
$action yii\base\Action

Действие, с которым должны быть связаны параметры

$params массив

Параметры, которые должны быть связаны с действием

return массив

Допустимые параметры, с которыми действие может быть запущено.

throws yii\web\BadRequestHttpException

если параметры отсутствуют или неверны.

goBack() общедоступный метод

Перенаправляет браузер на последнюю посещённую страницу.

Вы можете использовать этот метод в действии, возвращая yii\web\Response напрямую:

// stop executing this action and redirect to last visited page
return $this->goBack();

Для работы этой функции необходимо предварительно установить URL возврата в соответствующих местах.

См. также yii\web\User::getReturnUrl().

общедоступный yii\web\Response goBack ( $defaultUrl = null )
$defaultUrl строка|массив

URL по умолчанию для возврата в случае его предыдущего отсутствия. Если это null и URL возврата не был установлен ранее, будет перенаправлено на yii\web\Application::$homeUrl. Обратитесь к yii\web\User::setReturnUrl() для информации о принятом формате URL.

return yii\web\Response

Текущий объект ответа

goHome() общедоступный метод

Перенаправляет браузер на главную страницу.

Вы можете использовать этот метод в действии, возвращая yii\web\Response напрямую:

// stop executing this action and redirect to home page
return $this->goHome();
общедоступный yii\web\Response goHome ( )
return yii\web\Response

Текущий объект ответа

redirect() общедоступный метод

Перенаправляет браузер на указанный URL.

Этот метод является сокращением для yii\web\Response::redirect().

Вы можете использовать его в действии, возвращая yii\web\Response напрямую:

// stop executing this action and redirect to login page
return $this->redirect(['login']);
общедоступный yii\web\Response redirect ( $url, $statusCode = 302 )
$url строка|массив

URL для перенаправления. Может быть в одном из следующих форматов:

  • строка, представляющая URL (например, "http://example.com")
  • строка, представляющая псевдоним URL (например, "@example.com")
  • массив в формате [$route, ...name-value pairs...] (например, ['site/index', 'ref' => 1]) yii\helpers\Url::to() будет использован для преобразования массива в URL.

Любой относительный URL, начинающийся с одиночного слэша "/", будет преобразован в абсолютный, добавив к нему информацию о хосте текущего запроса.

$statusCode целое число

Код HTTP-статуса. По умолчанию 302. См. http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html для получения подробной информации о кодах HTTP-статуса

return yii\web\Response

Текущий объект ответа

refresh() общедоступный метод

Обновляет текущую страницу.

Этот метод является сокращением для yii\web\Response::refresh().

Вы можете использовать его в действии, возвращая yii\web\Response напрямую:

// stop executing this action and refresh the current page
return $this->refresh();
общедоступный yii\web\Response refresh ( $anchor = '' )
$anchor строка

Якорная ссылка, которая должна быть добавлена к URL перенаправления. По умолчанию пустая. Убедитесь, что якорная ссылка начинается с '#' если вы хотите её указать.

return yii\web\Response

Объект ответа

renderAjax() общедоступный метод

Отображает представление в ответ на AJAX-запрос.

Этот метод похож на renderPartial(), за исключением того, что он вставляет в результат рендеринга JS/CSS скрипты и файлы, зарегистрированные в представлении. По этой причине вы должны использовать этот метод вместо renderPartial() для отображения представления в ответ на AJAX-запрос.

общедоступный строка renderAjax ( $view, $params = [] )
$view строка

Имя представления. Обратитесь к render() для информации о том, как указать имя представления.

$params массив

Параметры (имя-значение), которые должны быть доступны в представлении.

return строка

Результат рендеринга.

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

Spec-Zone.ru

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