Spec-Zone.ru › CakePHP 3.3

Класс View

View, V в триаде MVC. View взаимодействует с Helpers и переменными представления, передаваемыми из контроллера, чтобы отобразить результаты действия контроллера. Часто это 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
    Коллекция Helpers.
  • $_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
    Массив имён встроенных helpers для включения.
  • $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
  • $view public
    string
  • $viewPath public
    string

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

  • _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) в виде строки. Имена действий с верхним регистром будут преобразованы в нижний регистр с символом подчеркивания по умолчанию. Это означает, что вы можете иметь LongActionNames, которые ссылаются на представления 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
    Возвращает содержимое заданной переменной View.
  • getCurrentType() public
    Получить текущий тип представления.
  • getVars() public
    Возвращает список переменных, доступных в текущем контексте View.
  • helpers() public
    Получить реестр хелперов, используемых этим классом View.
  • 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 необязательно null
Экземпляр запроса.
Cake\Network\Response $response необязательно null
Экземпляр ответа.
Cake\Event\EventManager $eventManager необязательно null
Экземпляр менеджера событий.
массив $viewOptions необязательно []

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

__get()source public

__get( string $name )

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

Параметры

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

Возвращает

mixed

__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 , boolean $pluginCheck true )

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

Параметры

строка $name
Имя элемента для поиска.
логическое значение $pluginCheck необязательно true
  • если false, плагин из запроса игнорируется, если плагин не загружен

Возвращает

строка|false
Имя файла элемента или false, если файл не найден.

_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 )

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

Параметры

строка $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, чтобы не выбрасывать исключения. - plugin - Установка в false принудительно заставит использовать элемент приложения из шаблонов плагинов, когда плагин имеет элемент с таким же именем. По умолчанию 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. Проверяет, загружен ли плагин, иначе имя файла останется неизменным для имён файлов, содержащих точку.

Параметры

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

Возвращает

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

prepend()source public

prepend( string $name , mixed $value )

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

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

Параметры

string $name
Имя блока
mixed $value

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

См. также

\Cake\View\ViewBlock::concat()

render()source public

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

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

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

  • beforeRender
  • afterRender
  • beforeLayout
  • afterLayout

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

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

Параметры

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

Возвращает

string|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 при ошибке. Для использования в макете создаются несколько переменных.

Параметры

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

Возвращает

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

Вызывает исключение

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

Вызывает

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

reset()source public

reset( string $name )

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

Параметры

string $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();

Параметры

string $name
Имя блока для захвата.

См. также

\Cake\View\ViewBlock::start()

template()source public

template( string|null $name null )

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

Параметры

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

Возвращает

string|null

templatePath()source public

templatePath( string|null $path null )

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

Параметры

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

Возвращает

string|null

theme()source public

theme( string|null $theme null )

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

Параметры

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

Возвращает

string|null

uuid()source public

uuid( string $object , string $url )

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

Параметры

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

Возвращает

string

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

_createCell()source protected

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

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

Параметры

string $className
Имя класса ячейки.
string $action
Имя действия.
string $plugin
Имя плагина.
array $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');

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

Параметры

string $cell

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

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

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

array $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 )

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

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

Параметры

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

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

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

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

Возвращает

Cake\Event\Event

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 optional LogLevel::ERROR
Уровень ошибки.
string|array $context optional []
Дополнительные данные для лога, относящиеся к этому сообщению.

Возвращает

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 могут быть переданы с помощью ключа 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)
]);

Устарело

3.3.0 Вы должны переработать код, чтобы использовать View Cells вместо этого метода.

Параметры

string|array $url

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

array $extra optional []

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

Возвращает

mixed

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


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

createView()source public

createView( string|null $viewClass null )

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

Параметры

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

Возвращает

Cake\View\View

Выбрасывает

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

set()source public

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

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

Параметры

string|array $name
Строка или массив данных.
mixed $value optional 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 optional null
Строка или массив строк, которые нужно добавить в _validViewOptions.
boolean $merge optional 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

$viewsource

public string

$viewPathsource

public string

© 2005–2017 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.
https://api.cakephp.org/3.3/class-Cake.View.View.html

Spec-Zone.ru

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