Spec-Zone.ru › Yii 2.0

Класс yii\web\View

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

View представляет собой объект представления в шаблоне MVC.

View предоставляет набор методов (например, render()) для целей отображения.

View по умолчанию настроен как компонент приложения в yii\base\Application. Вы можете получить доступ к этому экземпляру через Yii::$app->view.

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

'view' => [
    'theme' => 'app\themes\MyTheme',
    'renderers' => [
        // you may add Smarty or Twig renderer here
    ]
    // ...
]

Дополнительную информацию и сведения о применении View см. в статье руководства о представлениях.

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

Свойство Тип Описание Определено в
$assetBundles yii\web\AssetBundle[] Список зарегистрированных пакетов ресурсов. yii\web\View
$assetManager yii\web\AssetManager Менеджер ресурсов. yii\web\View
$behaviors yii\base\Behavior[] Список присоединённых к этому компоненту поведений. yii\base\Component
$blocks array Список именованных блоков вывода. yii\base\View
$cacheStack array Список активных фрагментных кэширующих виджетов. yii\base\View
$context yii\base\ViewContextInterface Контекст, в рамках которого вызывается метод renderFile(). yii\base\View
$css array Зарегистрированные блоки CSS-кода. yii\web\View
$cssFiles array Зарегистрированные CSS-файлы. yii\web\View
$defaultExtension string Расширение по умолчанию для файлов представления. yii\base\View
$dynamicPlaceholders array Список заполнителей для вставки динамического содержимого. yii\base\View
$js array Зарегистрированные блоки JS-кода. yii\web\View
$jsFiles array Зарегистрированные JS-файлы. yii\web\View
$linkTags array Зарегистрированные теги link. yii\web\View
$metaTags array Зарегистрированные мета-теги. yii\web\View
$params mixed Настраиваемые параметры, используемые в шаблонах представления. yii\base\View
$renderers array Список доступных рендереров, индексированных по соответствующим поддерживаемым расширениям файлов. yii\base\View
$theme yii\base\Theme|array|string Объект темы или конфигурация для создания объекта темы. yii\base\View
$title string Заголовок страницы. yii\web\View
$viewFile string|boolean Файл представления, который в настоящее время рендерится. yii\base\View

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

Метод Описание Определено в
__call() Вызывает метод с заданным именем, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после создания объекта путём клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в значение null. yii\base\Object
addDynamicPlaceholder() Добавляет заполнитель для динамического содержимого. yii\base\View
afterRender() Этот метод вызывается сразу после того, как renderFile() рендерит файл представления. yii\base\View
attachBehavior() Прикрепляет поведение к этому компоненту. yii\base\Component
attachBehaviors() Прикрепляет список поведений к компоненту. yii\base\Component
beforeRender() Этот метод вызывается непосредственно перед тем, как renderFile() рендерит файл представления. yii\base\View
beginBlock() Начинает запись блока. yii\base\View
beginBody() Отмечает начало раздела HTML тела. yii\web\View
beginCache() Начинает кеширование фрагмента. yii\base\View
beginContent() Начинает рендеринг содержимого, которое будет оформлено указанным представлением. yii\base\View
beginPage() Отмечает начало страницы. yii\base\View
behaviors() Возвращает список поведений, которые должен соблюдать этот компонент. yii\base\Component
canGetProperty() Возвращает значение, указывающее, можно ли прочитать свойство. yii\base\Object
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Object
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
clear() Очищает зарегистрированные теги мета, теги ссылки, скрипты/файлы css/js. yii\web\View
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
endBlock() Завершает запись блока. yii\base\View
endBody() Отмечает конец раздела HTML тела. yii\web\View
endCache() Завершает кеширование фрагмента. yii\base\View
endContent() Завершает рендеринг содержимого. yii\base\View
endPage() Отмечает конец HTML страницы. yii\web\View
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. yii\base\Component
evaluateDynamicContent() Вычисляет заданные PHP операторы. yii\base\View
getAssetManager() Регистрирует используемый менеджер активов этого объекта представления. yii\web\View
getBehavior() Возвращает объект поведения с заданным именем. yii\base\Component
getBehaviors() Возвращает все прикрепленные к этому компоненту поведения. yii\base\Component
getViewFile() yii\base\View
hasEventHandlers() Возвращает значение, указывающее, прикреплен ли какой-либо обработчик к заданному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
head() Отмечает позицию раздела HTML заголовка. yii\web\View
init() Инициализирует компонент представления. yii\base\View
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Прикрепляет обработчик событий к событию. yii\base\Component
registerAssetBundle() Регистрирует указанный пакет активов. yii\web\View
registerCss() Регистрирует блок кода CSS. yii\web\View
registerCssFile() Регистрирует файл CSS. yii\web\View
registerJs() Регистрирует блок кода JS. yii\web\View
registerJsFile() Регистрирует файл JS. yii\web\View
registerLinkTag() Регистрирует тег ссылки. yii\web\View
registerMetaTag() Регистрирует тег мета. yii\web\View
render() Рендерит представление. yii\base\View
renderAjax() Рендерит представление в ответ на AJAX запрос. yii\web\View
renderDynamic() Рендерит динамическое содержимое, возвращённое данными PHP операторами. yii\base\View
renderFile() Рендерит файл представления. yii\base\View
renderPhpFile() Рендерит файл представления как PHP скрипт. yii\base\View
setAssetManager() Устанавливает менеджер активов. yii\web\View
trigger() Вызывает событие. yii\base\Component

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

Метод Описание Определено в
findViewFile() Находит файл представления на основе заданного имени представления. yii\base\View
registerAssetFiles() Регистрирует все файлы, предоставляемые пакетом ресурсов, включая файлы зависимых пакетов. yii\web\View
renderBodyBeginHtml() Отображает содержимое, которое должно быть вставлено в начало раздела body. yii\web\View
renderBodyEndHtml() Отображает содержимое, которое должно быть вставлено в конец раздела body. yii\web\View
renderHeadHtml() Отображает содержимое, которое должно быть вставлено в раздел head. yii\web\View

События

Событие Тип Описание Определено в
EVENT_AFTER_RENDER yii\base\ViewEvent Событие, которое срабатывает после выполнения renderFile() сразу после отображения файла представления. yii\base\View
EVENT_BEFORE_RENDER yii\base\ViewEvent Событие, которое срабатывает перед выполнением renderFile() сразу перед отображением файла представления. yii\base\View
EVENT_BEGIN_BODY \yii\web\Event Событие, которое срабатывает методом beginBody(). yii\web\View
EVENT_BEGIN_PAGE yii\base\Event Событие, которое срабатывает методом beginPage(). yii\base\View
EVENT_END_BODY \yii\web\Event Событие, которое срабатывает методом endBody(). yii\web\View
EVENT_END_PAGE yii\base\Event Событие, которое срабатывает методом endPage(). yii\base\View

Константы

Константа Значение Описание Определено в
PH_BODY_BEGIN '' Внутренне используется в качестве места удержания содержимого, зарегистрированного для начала раздела body. yii\web\View
PH_BODY_END '' Внутренне используется в качестве места удержания содержимого, зарегистрированного для конца раздела body. yii\web\View
PH_HEAD ' ' Внутренне используется в качестве места удержания содержимого, зарегистрированного для раздела head. yii\web\View
POS_BEGIN 2 Расположение зарегистрированного блока или файлов кода JavaScript. Это означает, что расположение находится в начале раздела body. yii\web\View
POS_END 3 Расположение зарегистрированного блока или файлов кода JavaScript. Это означает, что расположение находится в конце раздела body. yii\web\View
POS_HEAD 1 Расположение зарегистрированного блока или файлов кода JavaScript. Это означает, что расположение находится в разделе head. yii\web\View
POS_LOAD 5 Расположение зарегистрированного блока кода JavaScript. Это означает, что блок кода JavaScript будет заключён в jQuery(window).load(). yii\web\View
POS_READY 4 Расположение зарегистрированного блока кода JavaScript. Это означает, что блок кода JavaScript будет заключён в jQuery(document).ready(). yii\web\View

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

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

Список зарегистрированных пакетов ресурсов. Ключи — имена пакетов, а значения — зарегистрированные объекты yii\web\AssetBundle.

См. также registerAssetBundle().

public yii\web\AssetBundle[] $assetBundles = []

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

Менеджер ресурсов. По умолчанию — компонент приложения "assetManager".

public yii\web\AssetManager getAssetManager ( )
public void setAssetManager ( $value )

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

Зарегистрированные блоки кода CSS.

См. также registerCss().

public array $css = []

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

Зарегистрированные файлы CSS.

См. также registerCssFile().

public array $cssFiles = []

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

Зарегистрированные блоки кода JS.

См. также registerJs().

public array $js = []

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

Зарегистрированные файлы JS.

См. также registerJsFile().

public array $jsFiles = []

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

Зарегистрированные теги link.

См. также registerLinkTag().

public array $linkTags = []

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

Зарегистрированные теги meta.

См. также registerMetaTag().

public array $metaTags = []

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

Заголовок страницы.

public string $title = null

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

beginBody() public method

Помечает начало раздела тела HTML.

public void beginBody ( )

clear() public method

Очищает зарегистрированные мета-теги, теги ссылки, скрипты/файлы CSS/JS.

public void clear ( )

endBody() public method

Помечает конец раздела тела HTML.

public void endBody ( )

endPage() public method

Помечает конец HTML-страницы.

public void endPage ( $ajaxMode = false )
$ajaxMode boolean

Указывает, рендерится ли представление в режиме AJAX. Если true, JS-скрипты, зарегистрированные в позициях POS_READY и POS_LOAD, будут рендериться в конце представления, как обычные скрипты.

getAssetManager() public method

Регистрирует менеджер ресурсов, используемый этим объектом представления.

public yii\web\AssetManager getAssetManager ( )
return yii\web\AssetManager

Менеджер ресурсов. По умолчанию, компонент приложения "assetManager".

head() public method

Помечает позицию раздела заголовка HTML.

public void head ( )

registerAssetBundle() public method

Регистрирует заданный пакет ресурсов.

Все зависимые пакеты ресурсов будут зарегистрированы.

public yii\web\AssetBundle registerAssetBundle ( $name, $position = null )
$name string

Имя класса пакета ресурсов (без ведущей косой черты)

$position integer|null

Если задано, это устанавливает минимальную позицию для файлов JavaScript. Это будет скорректировано в зависимости от позиции файла JavaScript пакета ресурсов или приведет к ошибке, если требования не могут быть выполнены. Если null, настройки позиции пакета ресурсов не будут изменены. Подробнее о позиции файлов JavaScript см. registerJsFile().

return yii\web\AssetBundle

Зарегистрированный экземпляр пакета ресурсов

throws yii\base\InvalidConfigException

если пакет ресурсов не существует или обнаружена циклическая зависимость

registerAssetFiles() protected method

Регистрирует все файлы, предоставляемые пакетом ресурсов, включая файлы зависимых пакетов.

Удаляет пакет из $assetBundles после регистрации файлов.

protected void registerAssetFiles ( $name )
$name string

Имя пакета для регистрации

registerCss() public method

Регистрирует блок кода CSS.

public void registerCss ( $css, $options = [], $key = null )
$css string

Содержимое блока кода CSS для регистрации

$options array

Атрибуты HTML для тега <style>.

$key string

Ключ, идентифицирующий блок кода CSS. Если null, используется $css в качестве ключа. Если два блока кода CSS зарегистрированы с одинаковым ключом, последний перепишет предыдущий.

registerCssFile() public method

Регистрирует файл CSS.

public void registerCssFile ( $url, $options = [], $key = null )
$url string

Файл CSS для регистрации.

$options array

Атрибуты HTML для тега link. Обратитесь к yii\helpers\Html::cssFile() для поддерживаемых опций. Следующие опции обрабатываются специально и не рассматриваются как атрибуты HTML:

  • depends: массив, указывает имена пакетов ресурсов, от которых зависит этот файл CSS.
$key string

Ключ, идентифицирующий файл скрипта CSS. Если null, используется $url в качестве ключа. Если два файла CSS зарегистрированы с одинаковым ключом, последний перепишет предыдущий.

registerJs() public method

Регистрирует блок кода JS.

public void registerJs ( $js, $position = self::POS_READY, $key = null )
$js string

Блок кода JS для регистрации

$position integer

Позиция, в которой тег скрипта JS должен быть вставлен в страницу. Возможные значения:

  • POS_HEAD: в разделе head
  • POS_BEGIN: в начале раздела body
  • POS_END: в конце раздела body
  • POS_LOAD: заключено в jQuery(window).load(). Обратите внимание, что при использовании этой позиции метод автоматически зарегистрирует файл jQuery js.
  • POS_READY: заключено в jQuery(document).ready(). По умолчанию. Обратите внимание, что при использовании этой позиции метод автоматически зарегистрирует файл jQuery js.
$key string

Ключ, идентифицирующий блок кода JS. Если null, используется $js в качестве ключа. Если два блока кода JS зарегистрированы с одинаковым ключом, последний перепишет предыдущий.

registerJsFile() public method

Регистрирует файл JS.

public void registerJsFile ( $url, $options = [], $key = null )
$url string

Файл JS для регистрации.

$options array

Атрибуты HTML для тега script. Следующие опции обрабатываются специально и не рассматриваются как атрибуты HTML:

  • depends: массив, указывает имена пакетов ресурсов, от которых зависит этот файл JS.
  • position: указывает, куда должен быть вставлен тег скрипта JS на странице. Возможные значения:
    • POS_HEAD: в разделе head
    • POS_BEGIN: в начале раздела body
    • POS_END: в конце раздела body. По умолчанию.

См. yii\helpers\Html::jsFile() для других поддерживаемых опций.

$key string

Ключ, идентифицирующий файл скрипта JS. Если null, используется $url в качестве ключа. Если два файла JS зарегистрированы с одинаковым ключом и одинаковой позицией, последний перепишет предыдущий. Обратите внимание, что опция position имеет приоритет, поэтому файлы, зарегистрированные с одинаковым ключом, но различными значениями опции position, не будут перезаписывать друг друга.

registerLinkTag() public method

Регистрирует тег ссылки.

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

$view->registerLinkTag(['rel' => 'icon', 'type' => 'image/png', 'href' => '/myicon.png']);

что приведет к следующему HTML: <link rel="icon" type="image/png" href="/myicon.png">.

Примечание: Для регистрации тегов ссылки для файлов стилей CSS используйте registerCssFile(), который имеет больше опций для такого тега ссылки.

public void registerLinkTag ( $options, $key = null )
$options array

Атрибуты HTML для тега ссылки.

$key string

Ключ, идентифицирующий тег ссылки. Если два тега ссылки зарегистрированы с одинаковым ключом, последний перепишет предыдущий. Если null, новый тег ссылки будет добавлен к существующим.

registerMetaTag() public method

Регистрирует мета-тег.

Например, тег meta с описанием можно добавить следующим образом:

$view->registerMetaTag([
    'name' => 'description',
    'content' => 'This website is about funny raccoons.'
]);

в результате чего получится тег <meta name="description" content="This website is about funny raccoons.">.

public void registerMetaTag ( $options, $key = null )
$options массив

Атрибуты HTML для тега meta.

$key строка

Ключ, идентифицирующий тег meta. Если два тега meta зарегистрированы с одинаковым ключом, последний перепишет предыдущий. Если значение null, новый тег meta будет добавлен к существующим.

renderAjax() public method

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

Этот метод аналогичен render(), за исключением того, что он обернёт отображаемое представление вызовами beginPage(), head(), beginBody(), endBody() и endPage(). Благодаря этому, метод может встраивать в результат отображения JS/CSS скрипты и файлы, зарегистрированные в представлении.

См. также render().

public строка renderAjax ( $view, $params = [], $context = null )
$view строка

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

$params массив

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

$context объект

Контекст, который представление должно использовать для отображения. Если null, будет использован существующий $context.

return строка

Результат отображения

renderBodyBeginHtml() protected method

Отображает содержимое, которое нужно вставить в начало раздела body.

Содержимое отображается с использованием зарегистрированных блоков и файлов JS-кода.

protected строка renderBodyBeginHtml ( )
return строка

Отображённое содержимое

renderBodyEndHtml() protected method

Отображает содержимое, которое нужно вставить в конец раздела body.

Содержимое отображается с использованием зарегистрированных блоков и файлов JS-кода.

protected строка renderBodyEndHtml ( $ajaxMode )
$ajaxMode логическое

Определяет, отображается ли представление в режиме AJAX. Если true, JS-скрипты, зарегистрированные в позициях POS_READY и POS_LOAD, будут отображены в конце представления, как обычные скрипты.

return строка

Отображённое содержимое

renderHeadHtml() protected method

Отображает содержимое, которое нужно вставить в секцию head.

Содержимое отображается с использованием зарегистрированных тегов meta, тегов link, блоков и файлов CSS/JS-кода.

protected строка renderHeadHtml ( )
return строка

Отображённое содержимое

setAssetManager() public method

Устанавливает менеджер активов.

public void setAssetManager ( $value )
$value yii\web\AssetManager

Менеджер активов

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

EVENT_BEGIN_BODY событие типа \yii\web\Event

Событие, которое срабатывает при вызове beginBody().

EVENT_END_BODY событие типа \yii\web\Event

Событие, которое срабатывает при вызове endBody().

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

Spec-Zone.ru

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