Spec-Zone.ru › CakePHP 3.2

Класс View

View, V в триаде MVC. View взаимодействует с Помощниками и переменными представления, переданными из контроллера, чтобы отобразить результаты действия контроллера. Часто это HTML, но также может быть JSON, XML, PDF или потоковые файлы.

CakePHP использует двухступенчатую модель представления. Это означает, что сначала рендерится содержимое шаблона, а затем оно вставляется в выбранный макет. Это также означает, что вы можете передавать данные из шаблона в макет, используя $this->set()

Класс View поддерживает использование плагинов в качестве тем. Вы можете установить

public function beforeRender(\Cake\Event\Event $event)
{
     $this->viewBuilder()->theme('SuperHot');
}

в своём Контроллере, чтобы использовать плагин SuperHot в качестве темы. Например, если текущее действие — PostsController::index(), то класс View будет искать файл шаблона plugins/SuperHot/Template/Posts/index.ctp. Если шаблон темы для текущего действия не найден, используется файл шаблона по умолчанию приложения.

Cake\View\View реализует Cake\Event\EventDispatcherInterface и использует Cake\View\CellTrait, Cake\Event\EventDispatcherTrait, Cake\Log\LogTrait, Cake\Routing\RequestActionTrait, Cake\View\ViewVarsTrait

Непосредственные подклассы

  • Cake\View\AjaxView
  • Cake\View\SerializedView

Косвенные подклассы

  • Cake\View\JsonView
  • Cake\View\XmlView
Пространство имён: Cake\View
Расположение: View/View.php

Краткое описание констант

  • string

    TYPE_ELEMENT
    'element'
  • string

    TYPE_LAYOUT
    'layout'
  • string

    TYPE_TEMPLATE
    'view'
  • string

    TYPE_VIEW
    'view'

Краткое описание свойств

  • $Blocks public
    Cake\View\ViewBlock
    Экземпляр ViewBlock.
  • $_current protected
    string
    Файл представления, который в данный момент рендерится. Используется для разрешения родительских файлов.
  • $_currentType protected
    string

    В данный момент рендерится элемент. Используется для поиска родительских фрагментов для элементов.

  • $_ext protected
    string
    Расширение файла. По умолчанию используется шаблон CakePHP с расширением ".ctp".
  • $_helpers protected
    Cake\View\HelperRegistry
    Коллекция помощников
  • $_parents protected
    array
    Имена представлений и их родителей, используемые с View::extend();
  • $_passedVars protected
    array
    Список переменных для сбора из связанного контроллера.
  • $_paths protected
    array
    Содержит массив путей.
  • $_pathsForPlugin protected
    array
    Содержит массив путей плагинов.
  • $_stack protected
    array
    Стек содержимого, используемый для вложенных шаблонов, которые все используют View::extend();
  • $autoLayout public
    boolean

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

  • $elementCache public
    string

    Конфигурация кэша, которую View будет использовать для хранения кэшированных элементов. Изменение этого параметра изменит конфигурацию по умолчанию, под которой хранятся элементы. Вы также можете выбрать конфигурацию кэша для каждого элемента.

  • $hasRendered public
    boolean
    Истина, если представление уже отображено.
  • $helpers public
    array
    Массив имён встроенных помощников для включения.
  • $layout public
    string

    Имя файла макета, в который будет вставлен шаблон. Указанное имя — имя файла макета в /src/Template/Layout без расширения .ctp.

  • $layoutPath public
    string
    Имя подпапки макетов, содержащей макеты для этого представления.
  • $name public
    string
    Имя контроллера, который создал представление, если таковой имеется.
  • $passedArgs public
    array
    Переданные в данный момент параметры. Передаются в View от создающего контроллера для удобства.
  • $plugin public
    string
    Имя плагина.
  • $request public
    Cake\Network\Request

    Экземпляр объекта Cake\Network\Request, содержащий информацию о текущем запросе. Этот объект содержит всю информацию о запросе и несколько методов для чтения дополнительной информации о запросе.

  • $response public
    Cake\Network\Response
    Ссылка на объект Response
  • $subDir public
    string

    Подкаталог для этого файла шаблона. Часто используется для маршрутизации на основе расширений. Например, с расширением xml, $subDir будет xml/

  • $template public
    string

    Имя файла шаблона для рендеринга. Указанное имя — имя файла в /src/Template/<подпапка> без расширения .ctp.

  • $templatePath public
    string
    Имя подпапки, содержащей шаблоны для этого представления.
  • $theme public
    string
    Тема представления, которая должна использоваться.
  • $uuids public
    array
    Список сгенерированных UUID DOM.

Краткое описание магических свойств

  • $Blocks public
    Cake\View\ViewBlock
  • $Flash public
    Cake\View\Helper\FlashHelper
  • $Form public
    Cake\View\Helper\FormHelper
  • $Html public
    Cake\View\Helper\HtmlHelper
  • $Number public
    Cake\View\Helper\NumberHelper
  • $Paginator public
    Cake\View\Helper\PaginatorHelper
  • $Rss public
    Cake\View\Helper\RssHelper
  • $Session public
    Cake\View\Helper\SessionHelper
  • $Text public
    Cake\View\Helper\TextHelper
  • $Time public
    Cake\View\Helper\TimeHelper
  • $Url public
    Cake\View\Helper\UrlHelper

Унаследованные свойства

  • _eventClass, _eventManager _viewBuilder, viewClass, viewVars

Краткое описание методов

  • __construct() public
    Конструктор
  • __get() public
    Магический аксессор для хелперов.
  • __set() public
    Магический сеттер для устаревших свойств.
  • _checkFilePath() protected
    Проверка, что путь к файлу представления не выходит за пределы определённых путей шаблонов.
  • _elementCache() protected
    Генерация параметров кэширования для элемента.
  • _evaluate() protected
    Метод-песочница для вычисления шаблона/скрипта представления.
  • _getElementFileName() protected
    Поиск имени файла элемента, возвращает false при ошибке.
  • _getLayoutFileName() protected
    Возвращает имя файла макета для данного шаблона в виде строки.
  • _getSubPaths() protected

    Находит все пути к подшаблонам, основанные на $basePath. Если в текущем запросе определён префикс, этот метод добавит префиксный путь шаблона к $basePath, переходя вверх по иерархии, в случае вложенного префикса. Суть в том, чтобы найти префиксные пути к шаблонам для элементов и макетов.

  • _getViewFileName() protected

    Возвращает имя файла шаблона действия (.ctp) в виде строки. Имена действий с верблюжьей нотацией (CamelCased) по умолчанию преобразуются в нижний регистр с нижним подчеркиванием. Это означает, что у вас могут быть имена действий с длинными названиями, которые ссылаются на представления long_action_names.ctp. Вы можете изменить правило инфлексии, переопределив _inflectViewFileName.

  • _inflectViewFileName() protected
    Изменение имени файла шаблона представления в нижний регистр с нижним подчеркиванием.
  • _paths() protected
    Возвращает все возможные пути для поиска файлов представлений в порядке приоритета.
  • _render() protected

    Отображает и возвращает вывод для заданного имени файла шаблона с его массивом данных. Обрабатывает родительские/расширенные шаблоны.

  • _renderElement() protected

    Отображает элемент и вызывает обратные вызовы before и afterRender для него, записывает в кэш, если используется кэш.

  • append() public
    Добавление к существующему или новому блоку.
  • assign() public

    Устанавливает содержимое блока. Это перезапишет любое существующее содержимое.

  • autoLayout() public

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

  • blocks() public
    Получение имён всех существующих блоков.
  • cache() public
    Создание кэшированного блока логики представления.
  • element() public
    Отображает фрагмент PHP с предоставленными параметрами и возвращает HTML, XML или любую другую строку.
  • elementExists() public
    Проверка существования элемента.
  • end() public
    Завершение блока захвата. Комплементарная функция к View::start()
  • exists() public
    Проверка существования блока.
  • extend() public

    Обеспечивает расширение/наследование шаблонов или элементов. Представления могут расширять родительское представление и заполнять блоки в родительском шаблоне.

  • fetch() public

    Извлечение содержимого блока. Если блок пуст или не определён, возвращается ''.

  • get() public
    Возвращает содержимое заданной переменной представления.
  • getCurrentType() public
    Получение текущего типа представления.
  • getVars() public
    Возвращает список переменных, доступных в текущем контексте представления.
  • helpers() public
    Получение реестра хелперов, используемого этим классом представления.
  • initialize() public
    Метод инициализации.
  • layout() public

    Получение/установка имени файла макета для отображения шаблона внутри. Указанное имя — это имя файла макета в /src/Template/Layout без расширения .ctp.

  • layoutPath() public
    Получение/установка пути к файлам макета.
  • loadHelper() public
    Загрузка хелпера. Делегирует загрузку хелпера в HelperRegistry::load().
  • loadHelpers() public
    Взаимодействие с HelperRegistry для загрузки всех хелперов.
  • pluginSplit() public

    Разделение имени плагина с использованием точки на имя плагина и имя файла. Если в $name нет точки, то индекс 0 будет null. Проверяет, загружен ли плагин, иначе имя файла останется неизменным для имён файлов, содержащих точку.

  • prepend() public
    Добавление в начало существующего или нового блока.
  • render() public
    Отображение представления для заданного файла шаблона и макета.
  • renderLayout() public

    Отображение макета. Возвращает вывод из _render(). Возвращает false при ошибке. Несколько переменных создаются для использования в макете.

  • reset() public

    Сброс содержимого блока. Это перезапишет любое существующее содержимое.

  • start() public
    Начало захвата вывода для «блока»
  • template() public

    Получение/установка имени файла шаблона для отображения. Указанное имя — это имя файла в /src/Template/ без расширения .ctp.

  • templatePath() public
    Получение/установка пути к файлам шаблонов.
  • theme() public
    Используемый шаблон представления.
  • uuid() public
    Генерация уникального, не случайного идентификатора DOM для объекта, основанного на типе объекта и целевом URL.

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

__construct()source public

__construct( Cake\Network\Request $request null , Cake\Network\Response $response null , Cake\Event\EventManager $eventManager null , array $viewOptions [] )

Конструктор

Параметры

Cake\Network\Request $request optional null
Экземпляр запроса.
Cake\Network\Response $response optional null
Экземпляр ответа.
Cake\Event\EventManager $eventManager optional null
Экземпляр диспетчера событий.
массив $viewOptions optional []

Параметры представления. См. View::$_passedVars для списка параметров, которые устанавливаются как свойства класса.

__get()source public

__get( string $name )

Магический аксессор для хелперов.

Параметры

строка $name
Имя атрибута для получения.

Возвращает

смешанный тип

__set()source public

__set( string $name , mixed $value )

Магический сеттер для устаревших свойств.

Параметры

строка $name
Имя свойства.
смешанный тип $value
Значение свойства.
END_OF_DOCUMENT_MARKER

_checkFilePath()source protected

_checkFilePath( string $file , string $path )

Проверьте, что путь к файлу представления не выходит за пределы определённых путей шаблонов.

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

Параметры

строка $file
Путь к файлу шаблона.
строка $path
Базовый путь, внутри которого должен находиться $file.

Возвращает

строка
Путь к файлу

Выбрасывает

InvalidArgumentException

_elementCache()source protected

_elementCache( string $name , array $data , array $options )

Создайте параметры конфигурации кэша для элемента.

Параметры

строка $name
Имя элемента
массив $data
Данные
массив $options
Параметры элемента

Возвращает

массив
Конфигурация кэша элемента.

_evaluate()source protected

_evaluate( string $viewFile , array $dataForView )

Метод-песочница для оценки скрипта шаблона/представления.

Параметры

строка $viewFile
Имя файла представления
массив $dataForView

Данные для включения в отрисовываемое представление. Если пусто, будут использоваться текущие View::$viewVars.

Возвращает

строка
Результат рендеринга

_getElementFileName()source protected

_getElementFileName( string $name )

Находит имя файла элемента, возвращает false при неудаче.

Параметры

строка $name
Имя элемента для поиска.

Возвращает

строка|ложь
Строка имени файла элемента или ложь, если файл не найден.

_getLayoutFileName()source protected

_getLayoutFileName( string|null $name null )

Возвращает имя файла макета для этого шаблона в виде строки.

Параметры

строка|null $name необязательно null
Имя макета для поиска.

Возвращает

строка
Имя файла файла макета (.ctp).

Выбрасывает

Cake\View\Exception\MissingLayoutException
при невозможности найти макет

_getSubPaths()source protected

_getSubPaths( string $basePath )

Находит все пути подшаблонов, основанные на $basePath. Если в текущем запросе определён префикс, этот метод добавит префиксный путь шаблона к $basePath, переходя на верхний уровень, если префикс вложен. В основном используется для поиска префиксных путей шаблонов для элементов и макетов.

Параметры

строка $basePath
Базовый путь, для которого нужно получить префиксный.

Возвращает

массив
Массив со всеми путями шаблонов.

_getViewFileName()source protected

_getViewFileName( string|null $name null )

Возвращает имя файла шаблона действия (.ctp) в виде строки. Имена действий с заглавными буквами в CamelCase будут по умолчанию преобразовываться в нижний регистр с символом подчеркивания. Это означает, что вы можете иметь имена действий LongActionNames, которые ссылаются на представления long_action_names.ctp. Вы можете изменить правило инфлексии, переопределив _inflectViewFileName.

Параметры

строка|null $name необязательно null
Действие контроллера, для которого нужно найти имя файла шаблона

Возвращает

строка
Имя файла шаблона

Выбрасывает

Cake\View\Exception\MissingTemplateException
если файл представления не был найден.

_inflectViewFileName()source protected

_inflectViewFileName( string $name )

Изменение имени файла шаблона представления в нижний регистр с подчеркиванием.

Параметры

строка $name
Имя файла, которое должно быть преобразовано.

Возвращает

строка
Имя файла после преобразования

_paths()source protected

_paths( string|null $plugin null , boolean $cached true )

Возвращает все возможные пути для поиска файлов представлений в порядке.

Параметры

строка|null $plugin необязательно null
Необязательное имя плагина для поиска файлов представлений.
логическое $cached необязательно true
Установите в значение false, чтобы принудительно обновить пути представлений. По умолчанию true.

Возвращает

массив
пути

_render()source protected

_render( string $viewFile , array $data [] )

Отображает и возвращает результат для заданного имени файла шаблона с его массивом данных. Обрабатывает родительские/расширяемые шаблоны.

Параметры

строка $viewFile
Имя файла представления
массив $data необязательно []

Данные для включения в отрисовываемое представление. Если пусто, будут использоваться текущие View::$viewVars.

Возвращает

строка
Результат рендеринга

Выбрасывает

LogicException
Когда блок открыт.

Триггеры

View.beforeRenderFile $this, [$viewFile]
View.afterRenderFile $this, [$viewFile, $content]

_renderElement()source protected

_renderElement( string $file , array $data , array $options )

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

Параметры

строка $file
Путь к файлу элемента
массив $data
Данные для рендеринга
массив $options
Параметры элемента

Возвращает

строка

Триггеры

View.beforeRender $this, [$file]
View.afterRender $this, [$file, $element]

append()source public

append( string $name , mixed $value null )

Добавить к уже существующему или новому блоку.

Добавление к новому блоку создаст этот блок.

Параметры

строка $name
Имя блока
смешанный $value необязательно null

Содержание блока. Значение будет преобразовано в строку.

См. также

\Cake\View\ViewBlock::concat()

assign()source public

assign( string $name , mixed $value )

Установите содержимое блока. Это перезапишет любое существующее содержимое.

Параметры

строка $name
Имя блока
смешанный $value

Содержание блока. Значение будет преобразовано в строку.

См. также

\Cake\View\ViewBlock::set()

autoLayout()source public

autoLayout( boolean|null $autoLayout null )

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

Параметры

логическое|null $autoLayout необязательно null
Логическое значение для включения/выключения. Если null, возвращает текущее значение.

Возвращает

логическое|null

blocks()source public

blocks( )

Получить имена всех существующих блоков.

Возвращает

массив
Массив, содержащий блоки.

См. также

\Cake\View\ViewBlock::keys()
END_OF_DOCUMENT_MARKER

cache()source public

cache( callable $block , array $options [] )

Создайте кэшированный блок логики представления.

Это позволяет кэшировать блок вывода представления в кэш, определённый в elementCache.

Этот метод сначала попытается прочитать кэш. Если кэш пуст, $block будет выполнен, а вывод сохранён.

Параметры

callable $block
Блок кода, вывод которого нужно кэшировать.
массив $options необязательно []
Параметры, определяющие ключ кэша и т. д.

Возвращает

строка
Отображаемое содержимое.

Выбрасывает

RuntimeException
Когда в $options отсутствует опция 'key'.

element()source public

element( string $name , array $data [] , array $options [] )

Отображает фрагмент PHP с предоставленными параметрами и возвращает HTML, XML или любую другую строку.

Эта функция реализует концепцию элементов (или «частичных макетов»), и массив $params используется для отправки данных, которые будут использоваться в элементе. Элементы могут быть кэшированы, повышая производительность, используя параметр cache.

Параметры

строка $name

Имя файла шаблона в папке /src/Template/Element/, или MyPlugin.template для использования элемента шаблона из MyPlugin. Если элемент не найден в плагине, будет произведён поиск по стандартному пути к представлениям.

массив $data необязательно []
Массив данных, которые будут доступны отображаемому представлению (т.е. элементу).
массив $options необязательно []

Массив параметров. Возможные ключи: - cache - Может быть либо true, чтобы включить кэширование с использованием конфигурации в View::$elementCache. Или массив. Если массив, можно использовать следующие ключи: - config - Используется для хранения кэшированного элемента в пользовательской конфигурации кэша. - key - Используется для определения ключа, используемого в Cache::write(). Он будет префиксным element_ - callbacks - Устанавливается в true, чтобы вызывать обратные вызовы помощников beforeRender и afterRender для данного элемента. По умолчанию false. - ignoreMissing - Используется для разрешения отсутствия элементов. Установите в true, чтобы не выбрасывать исключения.

Возвращает

строка
Отображённый элемент

Выбрасывает

Cake\View\Exception\MissingElementException

Когда элемент отсутствует, и ignoreMissing имеет значение false.


elementExists()source public

elementExists( string $name )

Проверяет существование элемента

Параметры

строка $name

Имя файла шаблона в папке /src/Template/Element/, или MyPlugin.template для проверки элемента шаблона из MyPlugin. Если элемент не найден в плагине, будет произведён поиск по стандартному пути к представлениям.

Возвращает

булево значение
Успех

end()source public

end( )

Завершить блок захвата. Комплементарное View::start()

См. также

\Cake\View\ViewBlock::end()

exists()source public

exists( string $name )

Проверить существование блока

Параметры

строка $name
Имя блока

Возвращает

булево значение

extend()source public

extend( string $name )

Обеспечивает расширение/наследование шаблонов или элементов. Представления могут расширять родительское представление и заполнять блоки в родительском шаблоне.

Параметры

строка $name
Шаблон или элемент, с которым нужно расширить текущий.

Выбрасывает

LogicException
если вы расширяете шаблон самим собой или создаёте циклы расширения.
LogicException
если вы расширяете элемент, который не существует

fetch()source public

fetch( string $name , string $default '' )

Получить содержимое блока. Если блок пуст или не определён, возвращается «».

Параметры

строка $name
Имя блока
строка $default необязательно ''
Значение по умолчанию

Возвращает

строка
Содержимое блока или $default, если блок не существует.

См. также

\Cake\View\ViewBlock::get()

get()source public

get( string $var , mixed $default null )

Возвращает содержимое заданной переменной представления.

Параметры

строка $var
Переменная представления, содержимое которой требуется.
смешанное $default необязательно null
Значение по умолчанию/резервное содержимое $var.

Возвращает

смешанное
Содержимое именованной переменной, если она задана, в противном случае $default.

getCurrentType()source public

getCurrentType( )

Получить текущий тип представления

Возвращает

строка

getVars()source public

getVars( )

Возвращает список переменных, доступных в текущем контексте представления

Возвращает

массив
Массив имён установленных переменных представления.

helpers()source public

helpers( )

Получить реестр помощников, используемый этим классом представления.

Возвращает

Cake\View\HelperRegistry

initialize()source public

initialize( )

Метод инициализации.

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

layout()source public

layout( string|null $name null )

Получить/установить имя файла макета для отображения шаблона внутри него. Указанное имя — это имя файла макета в /src/Template/Layout без расширения .ctp.

Параметры

строка|null $name необязательно null
Имя файла макета для установки. Если null, возвращает текущее имя.

Возвращает

строка|null

layoutPath()source public

layoutPath( string|null $path null )

Получить/установить путь к файлам макета.

Параметры

строка|null $path необязательно null
Путь к файлам макета. Если null, возвращает текущий путь.

Возвращает

строка|null

loadHelper()source public

loadHelper( string $name , array $config [] )

Загрузить помощника. Делегирует загрузку помощника HelperRegistry::load().

Параметры

строка $name
Имя помощника для загрузки.
массив $config необязательно []
Настройки для помощника.

Возвращает

Cake\View\Helper
объект созданного помощника.

См. также

\Cake\View\HelperRegistry::load()

loadHelpers()source public

loadHelpers( )

Взаимодействие с HelperRegistry для загрузки всех помощников.

pluginSplit()source public

pluginSplit( string $name , boolean $fallback true )

Разделяет имя плагина в формате «точка» на имя плагина и имя файла. Если в $name нет точки, то индекс 0 будет null. Проверяет, загружен ли плагин, иначе имя файла остаётся неизменным для имён файлов, содержащих точку.

Параметры

строка $name
Имя плагина, которое нужно разделить.
логическое значение $fallback необязательно true
Если true, использует плагин, заданный в текущем запросе, когда загруженный плагин не найден.

Возвращает

массив
Массив с двумя индексами. 0 => имя плагина, 1 => имя файла

prepend()source public

prepend( string $name , mixed $value )

Добавляет в начало существующего или нового блока.

Добавление в новый блок создаст блок.

Параметры

строка $name
Имя блока
смешанное $value

Содержимое блока. Значение будет преобразовано в строку.

См. также

\Cake\View\ViewBlock::concat()

render()source public

render( string|null $view null , string|null $layout null )

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

Отображение вызывает обратные вызовы помощников, которые срабатывают до и после отображения шаблона, а также до и после отображения макета. Обратные вызовы помощников вызываются:

  • beforeRender
  • afterRender
  • beforeLayout
  • afterLayout

Если View::$autoRender равен false и не указан $layout, шаблон будет возвращён без обработки.

Имена шаблона и макета могут указывать на шаблоны/макеты плагина. Используя синтаксис Plugin.template, можно использовать шаблон/макет плагина вместо приложения. Если выбранный плагин не найден, шаблон будет расположен в обычном порядке.

Параметры

строка|null $view необязательно null
Имя файла представления для использования
строка|null $layout необязательно null
Макет для использования.

Возвращает

строка|null
Отрендеренное содержимое или null, если содержимое уже было рендерено и возвращено ранее.

Выбрасывает

Cake\Core\Exception\Exception
Если возникла ошибка в представлении.

Вызывает

View.beforeRender $this, [$viewFileName]
View.afterRender $this, [$viewFileName]

renderLayout()source public

renderLayout( string $content , string|null $layout null )

Отображает макет. Возвращает вывод от _render(). Возвращает false при ошибке. Для использования в макете создаются несколько переменных.

Параметры

строка $content
Содержимое для отображения в шаблоне, заключенное в окружающий макет.
строка|null $layout необязательно null
Имя макета

Возвращает

смешанное
Отрендеренный вывод или false при ошибке

Выбрасывает

Cake\Core\Exception\Exception
если возникла ошибка в представлении.

Вызывает

View.beforeLayout $this, [$layoutFileName]
View.afterLayout $this, [$layoutFileName]

reset()source public

reset( string $name )

Сброс содержимого блока. Это перезапишет любое существующее содержимое.

Параметры

строка $name
Имя блока

См. также

\Cake\View\ViewBlock::set()

start()source public

start( string $name )

Начать захват вывода для 'блока'

Вы можете использовать start несколько раз для добавления или вставки содержимого в режиме захвата.

// Append content to an existing block.
$this->start('content');
echo $this->fetch('content');
echo 'Some new content';
$this->end();

// Prepend content to an existing block
$this->start('content');
echo 'Some new content';
echo $this->fetch('content');
$this->end();

Параметры

строка $name
Имя блока, для которого нужно захватить вывод.

См. также

\Cake\View\ViewBlock::start()

template()source public

template( string|null $name null )

Получить/установить имя файла шаблона для отображения. Указанное имя — имя файла в /src/Template/<подпапка> без расширения .ctp.

Параметры

строка|null $name необязательно null
Имя файла шаблона для установки. Если null, возвращает текущее имя.

Возвращает

строка|null

templatePath()source public

templatePath( string|null $path null )

Получить/установить путь к файлам шаблонов.

Параметры

строка|null $path необязательно null
Путь к файлам шаблонов. Если null, возвращает текущий путь.

Возвращает

строка|null

theme()source public

theme( string|null $theme null )

Тема представления для использования.

Параметры

строка|null $theme необязательно null
Имя темы. Если null, возвращает текущую тему.

Возвращает

строка|null

uuid()source public

uuid( string $object , string $url )

Генерирует уникальный, не случайный идентификатор DOM для объекта на основе типа объекта и целевого URL.

Параметры

строка $object
Тип объекта, например, 'форма' или 'ссылка'
строка $url
Целевой URL объекта

Возвращает

строка

Методы, используемые из Cake\View\CellTrait

_createCell()source protected

_createCell( string $className , string $action , string $plugin , array $options )

Создание и настройка экземпляра ячейки.

Параметры

строка $className
Имя класса ячейки.
строка $action
Имя действия.
строка $plugin
Имя плагина.
массив $options
Параметры конструктора для ячейки.

Возвращает

Cake\View\Cell;

cell()source public

cell( string $cell , array $data [] , array $options [] )

Отображает заданную ячейку.

Пример:

// Taxonomy\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('Taxonomy.TagCloud::smallList', ['limit' => 10]);

// App\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('TagCloud::smallList', ['limit' => 10]);

Действие display будет использоваться по умолчанию, если действие не указано:

// Taxonomy\View\Cell\TagCloudCell::display()
$cell = $this->cell('Taxonomy.TagCloud');

Ячейки не отображаются, пока не будут выведены.

Параметры

строка $cell

Вы должны указать имя ячейки и, необязательно, действие ячейки. Например: TagCloud::smallList вызовет View\Cell\TagCloudCell::smallList(), действие display будет вызвано по умолчанию, если не указано.

массив $data необязательно []

Дополнительные аргументы для метода ячейки. Например: cell('TagCloud::smallList', ['a1' => 'v1', 'a2' => 'v2']) соответствует View\Cell\TagCloud::smallList(v1, v2)

массив $options необязательно []
Параметры для конструктора ячейки

Возвращает

Cake\View\Cell
Экземпляр ячейки

Выбрасывает

Cake\View\Exception\MissingCellException
Если класс ячейки не был найден.
BadMethodCallException
Если класс ячейки не указал действие ячейки.

Методы, используемые из Cake\Event\EventDispatcherTrait

dispatchEvent()source public

dispatchEvent( string $name , array|null $data null , object|null $subject null )

Обёртка для создания и отправки событий.

Возвращает обработанное событие.

Параметры

строка $name
Имя события.
массив|null $data необязательно null

Любое значение, которое вы хотите передать с этим событием, чтобы слушатели могли его прочитать.

объект|null $subject необязательно null

Объект, к которому относится это событие (по умолчанию $this).

Возвращает

Cake\Event\Event
END_OF_DOCUMENT_MARKER

eventManager()source public

eventManager( Cake\Event\EventManager $eventManager null )

Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

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

Параметры

Cake\Event\EventManager $eventManager необязательно null
устанавливаемый eventManager

Возвращает

Cake\Event\EventManager

Методы, используемые из Cake\Log\LogTrait

log()source public

log( mixed $msg , integer|string $level LogLevel::ERROR , string|array $context [] )

Удобный метод для записи сообщения в журнал. Смотрите Log::write() для получения дополнительной информации о записи в журналы.

Параметры

mixed $msg
Сообщение журнала.
integer|string $level необязательно LogLevel::ERROR
Уровень ошибки.
string|array $context необязательно []
Дополнительные данные журнала, относящиеся к этому сообщению.

Возвращает

boolean
Успешность записи в журнал.

Методы, используемые из Cake\Routing\RequestActionTrait

requestAction()source public

requestAction( string|array $url , array $extra [] )

Вызывает метод контроллера из любого места. Может использоваться для соединения контроллеров или подключения плагинов к основному приложению. requestAction может быть использован для возвращения отрисованных представлений или получения возвращаемого значения из действий контроллеров.

Внутри метод использует Router::reverse() для преобразования параметра $url в строковый URL. Вы должны использовать форматы URL, совместимые с Router::reverse().

Примеры

Базовый пример получения возвращаемого значения действия контроллера:

$variables = $this->requestAction('/articles/popular');

Базовый пример request action для получения отрисованной страницы без макета.

$viewHtml = $this->requestAction('/articles/popular', ['return']);

Вы также можете передать URL в виде массива:

$vars = $this->requestAction(['controller' => 'articles', 'action' => 'popular']);

Передача других данных запроса

Вы можете передать данные POST, GET, COOKIE и другие данные в запрос, используя соответствующие ключи. Куки могут быть переданы с помощью ключа cookies. Параметры GET могут быть установлены с помощью ключа query, а данные POST могут быть отправлены с помощью ключа post.

$vars = $this->requestAction('/articles/popular', [
  'query' => ['page' => 1],
  'cookies' => ['remember_me' => 1],
]);

Отправка значений среды или заголовков

По умолчанию действия, отправленные этим методом, будут использовать глобальные значения $_SERVER и $_ENV. Если вы хотите переопределить эти значения для действия запроса, вы можете указать значения:

$vars = $this->requestAction('/articles/popular', [
  'environment' => ['CONTENT_TYPE' => 'application/json']
]);

Передача сессии

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

$vars = $this->requestAction('/articles/popular', [
  'session' => new Session($someSessionConfig)
]);

Параметры

string|array $url

Строковый или массивный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные аргументы в параметре $url.

array $extra необязательно []

Если массив включает ключ "return", он устанавливает autoRender в true. Также может быть использован для отправки данных GET/POST и переданных аргументов.

Возвращает

mixed

Булевое значение true или false при успехе/неудачи, или содержимое отрисованного действия, если в $extra установлен ключ "return".


Методы, используемые из Cake\View\ViewVarsTrait

createView()source public

createView( string|null $viewClass null )

Создаёт экземпляр класса представления на основе текущей конфигурации.

Параметры

string|null $viewClass необязательно null
Необязательное имя класса представления с пространством имён для экземпляризации.

Возвращает

Cake\View\View

Выбрасывает

Cake\View\Exception\MissingViewException
Если класс представления не найден.

set()source public

set( string|array $name , string|array|null|boolean $value null )

Сохраняет переменную или ассоциативный массив переменных для использования внутри шаблона.

Параметры

string|array $name
Строка или массив данных.
string|array|null|boolean $value необязательно null

Значение в случае, если $name — строка (тогда она работает как ключ). Не используется, если $name — ассоциативный массив, иначе служит значениями для ключей $name.

Возвращает


$this

viewBuilder()source public

viewBuilder( )

Получить используемого билдера представлений.

Возвращает

Cake\View\ViewBuilder

viewOptions()source public

viewOptions( string|array|null $options null , boolean $merge true )

Получить/установить допустимые параметры представления в свойстве _validViewOptions объекта. Свойство создаётся как пустой массив, если оно не задано. Если вызывается без параметров, возвращает текущий список допустимых параметров представления. Смотрите createView().

Параметры

string|array|null $options необязательно null
строка или массив строк, которые нужно добавить в _validViewOptions.
boolean $merge необязательно true

Объединить или переопределить существующие допустимые параметры представления. По умолчанию true.

Возвращает

array
Обновлённые параметры представления в виде массива.

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

$Blockssource

public Cake\View\ViewBlock

Экземпляр ViewBlock.

$_currentsource

protected string

Текущий файл представления, который отрисовывается. Используется для разрешения родительских файлов.

null

$_currentTypesource

protected string

В данный момент отрисовывается элемент. Используется для поиска родительских фрагментов для элементов.

''

$_extsource

protected string

Расширение файла. По умолчанию шаблон CakePHP ".ctp".

'.ctp'

$_helperssource

protected Cake\View\HelperRegistry

Коллекция помощников

$_parentssource

protected array

Имена представлений и их родителей, используемые с View::extend();

[]

$_passedVarssource

protected array

Список переменных для сбора из связанного контроллера.

[
    'viewVars', 'autoLayout', 'helpers', 'template', 'layout', 'name', 'theme',
    'layoutPath', 'templatePath', 'plugin', 'passedArgs'
]

$_pathssource

protected array

Содержит массив путей.

[]

$_pathsForPluginsource

protected array

Содержит массив путей плагинов.

[]

$_stacksource

protected array

Стек содержимого, используемый для вложенных шаблонов, которые все используют View::extend();

[]

$autoLayoutsource

public boolean

Включает или отключает стандартный режим CakePHP для применения файлов шаблонов макета. По умолчанию включен. Выключение означает, что макеты не будут автоматически применяться к рендеренным шаблонам.

true

$elementCachesource

public string

Конфигурация кэша, которую View будет использовать для хранения кэшированных элементов. Изменение этой конфигурации повлияет на стандартную конфигурацию, под которой хранятся элементы. Вы также можете выбрать конфигурацию кэша для каждого элемента.

См. также

\Cake\View\View::element()
'default'

$hasRenderedsource

public boolean

Истина, когда представление было отображено.

false

$helperssource

public array

Массив имён встроенных помощников для включения.

[]

$layoutsource

public string

Имя файла макета, в котором будет отображен шаблон. Указанное имя — это имя файла макета в /src/Template/Layout без расширения .ctp.

'default'

$layoutPathsource

public string

Имя подкаталога макетов, содержащего макеты для этого представления.

null

$namesource

public string

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

null

$passedArgssource

public array

Текущие переданные параметры. Передаются в представление из создающего контроллера для удобства.

Устарело

3.1.0 Используйте $this->request->params['pass'] вместо этого.
[]

$pluginsource

public string

Имя плагина.

null

$requestsource

public Cake\Network\Request

Экземпляр объекта Cake\Network\Request, содержащий информацию о текущем запросе. Этот объект содержит всю информацию о запросе и несколько методов для считывания дополнительной информации о запросе.

$responsesource

public Cake\Network\Response

Ссылка на объект Response

$subDirsource

public string

Подкаталог для этого файла шаблона. Часто используется для маршрутизации на основе расширений. Например, с расширением xml, $subDir будет xml/

null

$templatesource

public string

Имя файла шаблона для рендеринга. Указанное имя — это имя файла в /src/Template/<подкаталог> без расширения .ctp.

null

$templatePathsource

public string

Имя подкаталога, содержащего шаблоны для этого представления.

null

$themesource

public string

Тема представления для использования.

null

$uuidssource

public array

Список сгенерированных UUID DOM.

[]

Подробное описание магических свойств

$Blockssource

public Cake\View\ViewBlock

$Flashsource

public Cake\View\Helper\FlashHelper

$Formsource

public Cake\View\Helper\FormHelper

$Htmlsource

public Cake\View\Helper\HtmlHelper

$Numbersource

public Cake\View\Helper\NumberHelper

$Paginatorsource

public Cake\View\Helper\PaginatorHelper

$Rsssource

public Cake\View\Helper\RssHelper

$Sessionsource

public Cake\View\Helper\SessionHelper

$Textsource

public Cake\View\Helper\TextHelper

$Timesource

public Cake\View\Helper\TimeHelper

$Urlsource

public Cake\View\Helper\UrlHelper

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.View.View.html

Spec-Zone.ru

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