Класс yii\base\View
| Наследование | yii\base\View » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Подклассы | yii\web\View |
| Доступна с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/base/View.php |
View представляет собой объект представления в паттерне MVC.
View предоставляет набор методов (например, render()) для целей рендеринга.
Для более подробной информации и использования View, обратитесь к статье руководства по представлениям.
Публичные свойства
| Свойство | Тип | Описание | Определено |
|---|---|---|---|
| $behaviors | yii\base\Behavior[] | Список прикрепленных к этому компоненту поведений | yii\base\Component |
| $blocks | массив | Список именованных блоков вывода. | yii\base\View |
| $cacheStack | массив | Список активных фрагментов кэширования виджетов. | yii\base\View |
| $context | yii\base\ViewContextInterface | Контекст, в котором вызывается метод renderFile(). | yii\base\View |
| $defaultExtension | строка | Расширение по умолчанию для файлов представлений. | yii\base\View |
| $dynamicPlaceholders | массив | Список заготовок для вставки динамического содержимого. | yii\base\View |
| $params | смешанный тип | Пользовательские параметры, общие для шаблонов представлений. | yii\base\View |
| $renderers | массив | Список доступных рендереров, индексированных по соответствующим поддерживаемым расширениям файлов. | yii\base\View |
| $theme | yii\base\Theme|массив|строка | Объект темы или конфигурация для создания объекта темы. | yii\base\View |
| $viewFile | строка|логическое значение | Файл представления, который в данный момент рендерится. | 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 |
| 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 |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| endBlock() | Заканчивает запись блока. | yii\base\View |
| endCache() | Заканчивает кэширование фрагмента. | yii\base\View |
| endContent() | Заканчивает рендеринг содержимого. | yii\base\View |
| endPage() | Помечает окончание страницы. | yii\base\View |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. | yii\base\Component |
| evaluateDynamicContent() | Оценивает заданные PHP-утверждения. | yii\base\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 |
| init() | Инициализирует компонент представления. | yii\base\View |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| on() | Присоединяет обработчик событий к событию. | yii\base\Component |
| render() | Рендерит представление. | yii\base\View |
| renderDynamic() | Рендерит динамическое содержимое, возвращённое заданными PHP-утверждениями. | yii\base\View |
| renderFile() | Рендерит файл представления. | yii\base\View |
| renderPhpFile() | Рендерит файл представления как PHP-скрипт. | yii\base\View |
| trigger() | Вызывает событие. | yii\base\Component |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| findViewFile() | Ищет файл представления на основе заданного имени представления. | yii\base\View |
События
| Событие | Тип | Описание | Определено в |
|---|---|---|---|
| EVENT_AFTER_RENDER | yii\base\ViewEvent | Событие, которое срабатывает при renderFile() сразу после рендеринга файла представления. | yii\base\View |
| EVENT_BEFORE_RENDER | yii\base\ViewEvent | Событие, которое срабатывает при renderFile() сразу перед рендерингом файла представления. | yii\base\View |
| EVENT_BEGIN_PAGE | yii\base\Event | Событие, которое срабатывает при beginPage(). | yii\base\View |
| EVENT_END_PAGE | yii\base\Event | Событие, которое срабатывает при endPage(). | yii\base\View |
Подробное описание свойств
$blocks общедоступное свойство
Список именованных блоков вывода. Ключи — имена блоков, а значения — соответствующее содержимое блоков. Вы можете вызвать beginBlock() и endBlock() для захвата небольших фрагментов представления. Позже к ним можно получить доступ через это свойство.
public array $blocks = null
$cacheStack общедоступное свойство
Список активных виджетов кэша фрагментов. Это свойство используется внутри для реализации функции кэширования контента. Не изменяйте его напрямую.
public array $cacheStack = []
$context общественное свойство
Контекст, в котором вызывается метод renderFile().
public yii\base\ViewContextInterface $context = null
$defaultExtension общественное свойство
Расширение по умолчанию для файлов представления. Оно будет добавленно к именам файлов представления, если они не содержат расширения.
public string $defaultExtension = 'php'
$dynamicPlaceholders общественное свойство
Список заготовок для встраивания динамического контента. Это свойство используется внутри для реализации функции кэширования контента. Не изменяйте его напрямую.
public array $dynamicPlaceholders = []
$params общественное свойство
Настраиваемые параметры, которые используются в шаблонах представления.
public mixed $params = []
$renderers общественное свойство
Список доступных рендереров, индексированных по соответствующим поддерживаемым расширениям файлов. Каждый рендерер может быть объектом рендерера представления или конфигурацией для создания объекта рендерера. Например, следующая конфигурация включает оба рендерера представлений Smarty и Twig:
[
'tpl' => ['class' => 'yii\smarty\ViewRenderer'],
'twig' => ['class' => 'yii\twig\ViewRenderer'],
]
Если для данного файла представления нет доступного рендерера, файл представления будет обрабатываться как обычный PHP-файл и отображаться с помощью renderPhpFile().
public array $renderers = null
$theme общественное свойство
Объект темы или конфигурация для создания объекта темы. Если не задано, это означает, что тема не включена.
public yii\base\Theme|array|string $theme = null
$viewFile общественное только для чтения свойство
Файл представления, который в данный момент отображается. Ложь, если файл представления не отображается.
public string|boolean getViewFile ( )
Подробное описание методов
addDynamicPlaceholder() public method
Добавляет заполнитель для динамического содержимого.
Этот метод используется внутри компонента.
| public void addDynamicPlaceholder ( $placeholder, $statements ) | ||
|---|---|---|
| $placeholder | string |
Имя заполнителя |
| $statements | string |
PHP-команды для генерации динамического содержимого |
afterRender() public method
Этот метод вызывается сразу после того, как renderFile() отобразит файл представления.
Стандартная реализация вызовет событие EVENT_AFTER_RENDER. Если вы переопределяете этот метод, убедитесь, что вы сначала вызываете родительскую реализацию.
| public void afterRender ( $viewFile, $params, &$output ) | ||
|---|---|---|
| $viewFile | string |
Файл представления, который отображается. |
| $params | array |
Массив параметров, переданный методу render(). |
| $output | string |
Результат отображения файла представления. Изменения этого параметра будут переданы обратно и возвращены методом renderFile(). |
beforeRender() public method
Этот метод вызывается непосредственно перед тем, как renderFile() отобразит файл представления.
Стандартная реализация вызовет событие EVENT_BEFORE_RENDER. Если вы переопределяете этот метод, убедитесь, что сначала вызываете родительскую реализацию.
| public boolean beforeRender ( $viewFile, $params ) | ||
|---|---|---|
| $viewFile | string |
Файл представления, который будет отображаться. |
| $params | array |
Массив параметров, переданный методу render(). |
| return | boolean |
Необходимо ли продолжить отображение файла представления. |
beginBlock() public method
Начинает запись блока.
Этот метод — сокращение для начала записи блока yii\widgets\Block
| public yii\widgets\Block beginBlock ( $id, $renderInPlace = false ) | ||
|---|---|---|
| $id | string |
Идентификатор блока. |
| $renderInPlace | boolean |
Отображать содержимое блока на месте. По умолчанию false, что означает, что захваченный блок не будет отображаться. |
| return | yii\widgets\Block |
Экземпляр виджета Block |
beginCache() public method
Начинает кэширование фрагментов.
Этот метод отобразит кэшированное содержимое, если оно доступно. В противном случае он начнёт кэширование и ожидает вызова endCache() для завершения кэширования и сохранения содержимого в кэше. Типичное использование кэширования фрагментов выглядит следующим образом,
if ($this->beginCache($id)) {
// ...generate content here
$this->endCache();
}
| public boolean beginCache ( $id, $properties = [] ) | ||
|---|---|---|
| $id | string |
Уникальный идентификатор, определяющий фрагмент, подлежащий кэшированию. |
| $properties | array |
Начальные значения свойств для yii\widgets\FragmentCache |
| return | boolean |
Необходимо ли генерировать содержимое для кэширования. False, если кэшированная версия доступна. |
beginContent() public method
Начинает отображение содержимого, которое должно быть оформлено указанным представлением.
Этот метод может быть использован для реализации вложенного макета. Например, макет может быть встроен в другой файл макета, указанный как '@app/views/layouts/base.php', как показано ниже:
<?php $this->beginContent('@app/views/layouts/base.php'); ?>
//...layout content here...
<?php $this->endContent(); ?>
См. также yii\widgets\ContentDecorator.
| public yii\widgets\ContentDecorator beginContent ( $viewFile, $params = [] ) | ||
|---|---|---|
| $viewFile | string |
Файл представления, который будет использоваться для оформления содержимого, заключённого в этот виджет. Он может быть указан как путь к файлу представления или псевдоним пути. |
| $params | array |
Переменные (имя => значение), которые должны быть извлечены и доступны в представлении-оформляющем. |
| return | yii\widgets\ContentDecorator |
Экземпляр виджета ContentDecorator |
beginPage() public method
Помечает начало страницы.
| public void beginPage ( ) |
|---|
endBlock() public method
Завершает запись блока.
| public void endBlock ( ) |
|---|
endCache() public method
Завершает кэширование фрагментов.
| public void endCache ( ) |
|---|
endContent() public method
Завершает отображение содержимого.
| public void endContent ( ) |
|---|
endPage() public method
Помечает окончание страницы.
| public void endPage ( ) |
|---|
evaluateDynamicContent() public method
Вычисляет заданные PHP-команды.
Этот метод в основном используется внутри компонента для реализации динамического содержимого.
| public mixed evaluateDynamicContent ( $statements ) | ||
|---|---|---|
| $statements | string |
PHP-команды, которые необходимо вычислить. |
| return | mixed |
Возвращаемое значение PHP-команд. |
findViewFile() protected method
Ищет файл представления по заданному имени представления.
| protected string findViewFile ( $view, $context = null ) | ||
|---|---|---|
| $view | string |
Имя представления или псевдоним пути к файлу представления. Обратитесь к render() для получения информации о том, как указать этот параметр. |
| $context | object |
Контекст, который будет присвоен представлению, и к которому можно будет обратиться позже в представлении через $context. Если контекст реализует интерфейс yii\base\ViewContextInterface, он также может быть использован для поиска файла представления, соответствующего относительному имени представления. |
| return | string |
Путь к файлу представления. Обратите внимание, что файл может отсутствовать. |
| throws | yii\base\InvalidCallException |
если относительному имени представления присвоено значение, но нет активного контекста для определения соответствующего файла представления. |
getViewFile() public method
| public string|boolean getViewFile ( ) | ||
|---|---|---|
| return | string|boolean |
Файл представления, который в настоящее время отображается. False, если файл представления не отображается. |
init() public method
Инициализирует компонент представления.
| public void init ( ) |
|---|
render() public method
Отображает представление.
Представление, которое нужно отобразить, может быть указано в одном из следующих форматов:
- псевдоним пути (например, "@app/views/site/index");
- абсолютный путь в приложении (например, "//site/index"): имя представления начинается с двойных косых черт. Файл фактического представления будет искаться в пути представления приложения.
- абсолютный путь в текущем модуле (например, "/site/index"): имя представления начинается с одной косой черты. Файл фактического представления будет искаться в пути представления текущего модуля.
- относительное представление (например, "index"): имя представления не начинается с
@или/. Соответствующий файл представления будет искаться в пути представления представления$context. Если$contextне указано, оно будет искаться в каталоге, содержащем представление, которое в данный момент отображается (т.е., это происходит при отображении представления внутри другого представления).
См. также renderFile().
| public строка render ( $view, $params = [], $context = null ) | ||
|---|---|---|
| $view | строка |
Имя представления. |
| $params | массив |
Параметры (пары имя-значение), которые будут извлечены и доступны в файле представления. |
| $context | объект |
Контекст, который будет назначен представлению и к которому можно будет обратиться позже через $context в представлении. Если контекст реализует yii\base\ViewContextInterface, он также может быть использован для поиска файла представления, соответствующего имени относительного представления. |
| return | строка |
Результат рендеринга |
| throws | yii\base\ViewNotFoundException |
если файл представления не существует. |
| throws | yii\base\InvalidCallException |
если представление не может быть разрешено. |
renderDynamic() public method
Отображает динамическое содержимое, возвращаемое заданными PHP-выражениями.
Этот метод используется в основном совместно с кешированием содержимого (кешированием фрагментов и кешированием страниц), когда некоторые части содержимого (называемые *динамическим содержимым*) не должны кешироваться. Динамическое содержимое должно возвращаться некоторыми PHP-выражениями.
| public строка renderDynamic ( $statements ) | ||
|---|---|---|
| $statements | строка |
PHP-выражения для генерации динамического содержимого. |
| return | строка |
Заполнитель динамического содержимого или само динамическое содержимое, если в настоящее время нет активного кеша содержимого. |
renderFile() public method
Отображает файл представления.
Если $theme включён (не равен null), будет предпринята попытка отобразить тематическую версию файла представления, если она доступна.
Метод вызовет yii\helpers\FileHelper::localize() для локализации файла представления.
Если рендерер включён (не равен null), метод будет использовать его для отображения файла представления. В противном случае он просто включит файл представления как обычный PHP-файл, зафиксирует его вывод и вернёт его как строку.
| public строка renderFile ( $viewFile, $params = [], $context = null ) | ||
|---|---|---|
| $viewFile | строка |
Файл представления. Это может быть абсолютный путь к файлу или его псевдоним. |
| $params | массив |
Параметры (пары имя-значение), которые будут извлечены и доступны в файле представления. |
| $context | объект |
Контекст, который представление должно использовать для отображения представления. Если null, будет использован существующий $context. |
| return | строка |
Результат рендеринга |
| throws | yii\base\ViewNotFoundException |
если файл представления не существует |
renderPhpFile() public method
Отображает файл представления как PHP-скрипт.
Этот метод обрабатывает файл представления как PHP-скрипт и включает файл. Он извлекает заданные параметры и делает их доступными в файле представления. Метод фиксирует вывод включённого файла представления и возвращает его как строку.
Этот метод должен вызываться в основном рендерером представления или renderFile().
| public строка renderPhpFile ( $_file_, $_params_ = [] ) | ||
|---|---|---|
| $_file_ | строка |
Файл представления. |
| $_params_ | массив |
Параметры (пары имя-значение), которые будут извлечены и доступны в файле представления. |
| return | строка |
Результат рендеринга |
Подробное описание событий
EVENT_AFTER_RENDER событие типа yii\base\ViewEvent
Событие, которое срабатывает в renderFile() сразу после отображения файла представления.
EVENT_BEFORE_RENDER событие типа yii\base\ViewEvent
Событие, которое срабатывает в renderFile() сразу перед отображением файла представления.
EVENT_BEGIN_PAGE событие типа yii\base\Event
Событие, которое срабатывает в beginPage().
EVENT_END_PAGE событие типа yii\base\Event
Событие, которое срабатывает в endPage().
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-base-view.html