Spec-Zone.ru › CakePHP 3.7

Класс Представление

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

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

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

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

в вашем контроллере, чтобы использовать плагин SuperHot в качестве темы. Например, если текущее действие — PostsController::index(), то класс представления будет искать файл шаблона 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

    NAME_ELEMENT
    'Element'
  • string

    NAME_TEMPLATE
    'Template'
  • string

    TYPE_ELEMENT
    'element'
  • string

    TYPE_LAYOUT
    'layout'
  • string

    TYPE_TEMPLATE
    'view'
  • string

    TYPE_VIEW
    'view'

Резюме свойств

  • $Blocks protected
    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();
  • $_viewBlockClass protected
    string
    Класс ViewBlock.
  • $autoLayout protected
    boolean

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

  • $elementCache protected
    string

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

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

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

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

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

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

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

  • $template protected
    string

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

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

Резюме магических свойств

  • $Blocks public
    Cake\View\ViewBlock
  • $Breadcrumbs public
    Cake\View\Helper\BreadcrumbsHelper
  • $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

Наследуемые магические свойства

  • _validViewOptions

Наследуемые свойства

  • _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 deprecated

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

  • blocks() public
    Получение имён всех существующих блоков.
  • cache() public
    Создание кэшированного блока логики представления.
  • disableAutoLayout() public
    Отключение стандартного режима CakePHP по применению файлов макета.
  • element() public
    Отображение фрагмента PHP с предоставленными параметрами и возвращение HTML, XML или любой другой строки.
  • elementExists() public
    Проверка существования элемента
  • enableAutoLayout() public

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

  • end() public
    Закрытие блока захвата. Комплементарное методу View::start()
  • exists() public
    Проверка существования блока
  • extend() public

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

  • fetch() public

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

  • get() public
    Возвращает содержимое заданной переменной представления.
  • getCurrentType() public
    Получение текущего типа представления
  • getLayout() public

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

  • getLayoutPath() public
    Получение пути к файлам макетов.
  • getName() public
    Возвращает имя контроллера представления.
  • getPlugin() public
    Возвращает имя плагина.
  • getRequest() public
    Получение экземпляра запроса.
  • getResponse() public
    Получение экземпляра ответа.
  • getSubDir() public
    Получение подкаталога для файлов данного шаблона.
  • getTemplate() public

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

  • getTemplatePath() public
    Получение пути к файлам шаблонов.
  • getTheme() public
    Получение текущей темы представления.
  • getVars() public
    Возвращает список переменных, доступных в текущем контексте представления.
  • helpers() public
    Получение реестра помощников, используемого этим классом представления.
  • initialize() public
    Метод инициализации.
  • isAutoLayoutEnabled() public

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

  • layout() public deprecated

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

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

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

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

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

  • reset() public

    Сброс содержимого блока. Заменяет любое существующее содержимое.

  • setElementCache() public
    Установка конфигурации кеша, которую будет использовать представление для хранения кэшированных элементов.
  • setLayout() public

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

  • setLayoutPath() public
    Установить путь к файлам макета.
  • setPlugin() public
    Устанавливает имя плагина.
  • setRequest() public

    Устанавливает объекты запроса и настраивает ряд свойств контроллера на основе содержимого запроса. Свойства, которые устанавливаются:

  • setResponse() public
    Устанавливает экземпляр ответа.
  • setSubDir() public
    Установить подкаталог для файлов шаблонов.
  • setTemplate() public

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

  • setTemplatePath() public
    Установить путь к файлам шаблонов.
  • setTheme() public
    Установить тему представления, которую следует использовать.
  • start() public
    Начать захват вывода для блока
  • template() public deprecated

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

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

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

__construct()source public

__construct( Cake\Http\ServerRequest $request = null , Cake\Http\Response $response = null , Cake\Event\EventManager $eventManager = null , array $viewOptions = [] )

Конструктор

Параметры

Cake\Http\ServerRequest $request optional null
Экземпляр запроса.
Cake\Http\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
Значение свойства.

_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
Данные для включения в рендеренное представление.

Возвращает

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

_getElementFileName()source protected

_getElementFileName( string $name , boolean $pluginCheck = true )

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

Параметры

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

Возвращает

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

_getLayoutFileName()source protected

_getLayoutFileName( string|null $name = null )

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

Параметры

строка|null $name optional 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 optional 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 optional null
Необязательное имя плагина для поиска файлов представления.
логическое значение $cached optional true
Установите в значение false, чтобы принудительно обновить пути представления. По умолчанию true.

Возвращает

массив
пути

_render()source protected

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

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

Параметры

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

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

Возвращает

string
Отображенный вывод

Выбрасывает

LogicException
Когда блок оставлен открытым.

Вызывает

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

_renderElement()source protected

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

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

Параметры

string $file
Путь к файлу элемента
array $data
Данные для отображения
array $options
Параметры элемента

Возвращает

string

Вызывает

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

append()source public

append( string $name , mixed $value = null )

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

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

Параметры

string $name
Имя блока
mixed $value необязательно null

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::concat()

assign()source public

assign( string $name , mixed $value )

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

Параметры

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

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::set()

autoLayout()source public deprecated

autoLayout( boolean|null $autoLayout = null )

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

Устарело

3.5.0 Используйте isAutoLayoutEnabled()/enableAutoLayout() вместо этого.

Параметры

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

Возвращает

boolean|null

blocks()source public

blocks( )

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

Возвращает

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

См. также

\Cake\View\ViewBlock::keys()

cache()source public

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

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

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

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

Параметры

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

Возвращает

string
Содержимое рендеринга.

Выбрасывает

RuntimeException
Если в $options отсутствует параметр 'key'.
END_OF_DOCUMENT_MARKER

disableAutoLayout()source public

disableAutoLayout( )

Отключает стандартный режим CakePHP по применению файлов макета.

Макеты не будут автоматически применяться к отрисовываемым представлениям.

Возвращает


$this

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. Если элемент не найден в плагине, будет произведён поиск по стандартному пути представления.

Возвращает

логическое значение
Успех

enableAutoLayout()source public

enableAutoLayout( boolean $enable = true )

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

Параметры

логическое значение $enable необязательный true
Логическое значение для включения/выключения.

Возвращает


$this

end()source public

end( )

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::end()

exists()source public

exists( string $name )

Проверка наличия блока

Параметры

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

Возвращает

логическое значение

extend()source public

extend( string $name )

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

Параметры

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

Возвращает


$this

Исключение

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

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

Возвращает

строка

getLayout()source public

getLayout( )

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

Возвращает

строка

getLayoutPath()source public

getLayoutPath( )

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

Возвращает

строка

getName()source public

getName( )

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

Возвращает

строка|null

С тех пор как

3.7.7

getPlugin()source public

getPlugin( )

Возвращает имя плагина.

Возвращает

строка|null

С тех пор как

3.7.0

getRequest()source public

getRequest( )

Получает экземпляр запроса.

Возвращает

Cake\Http\ServerRequest

С тех пор как

3.7.0

getResponse()source public

getResponse( )

Получает экземпляр ответа.

Возвращает

Cake\Http\Response

С тех пор как

3.7.0

getSubDir()source public

getSubDir( )

Получить поддиректорию для файлов шаблона.

Возвращает

строка

См. также

\Cake\View\View::$subDir

С тех пор как

3.7.0

getTemplate()source public

getTemplate( )

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

Возвращает

строка

getTemplatePath()source public

getTemplatePath( )

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

Возвращает

строка

getTheme()source public

getTheme( )

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

Возвращает

строка|null

getVars()source public

getVars( )

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

Возвращает

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

helpers()source public

helpers( )

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

Возвращает

Cake\View\HelperRegistry

initialize()source public

initialize( )

Метод обработчика инициализации.

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

isAutoLayoutEnabled()source public

isAutoLayoutEnabled( )

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

Возвращает

boolean

layout()source public устарело

layout( string|null $name = null )

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

Устарело

3.5.0 Используйте getLayout()/setLayout() вместо этого.

Параметры

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

Возвращает

строка|null

layoutPath()source public устарело

layoutPath( string|null $path = null )

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

Устарело

3.5.0 Используйте getLayoutPath()/setLayoutPath() вместо этого.

Параметры

строка|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 для загрузки всех помощников.

Возвращает


$this

pluginSplit()source public

pluginSplit( string $name , boolean $fallback = true )

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

Параметры

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

Возвращает

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

prepend()source public

prepend( string $name , mixed $value )

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

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

Параметры

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

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::concat()

render()source public

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

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

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

  • 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
Имя блока

Возвращает


$this

См. также

\Cake\View\ViewBlock::set()

setElementCache()source public

setElementCache( string $elementCache )

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

Параметры

строка $elementCache
Имя конфигурации кэша.

Возвращает


$this

См. также

\Cake\View\View::$elementCache

С

3.7.0

setLayout()source public

setLayout( string $name )

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

Параметры

строка $name
Имя файла макета для установки.

Возвращает


$this

setLayoutPath()source public

setLayoutPath( string $path )

Установить путь для файлов макета.

Параметры

строка $path
Путь для файлов макета.

Возвращает


$this

setPlugin()source public

setPlugin( string $name )

Устанавливает имя плагина.

Параметры

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

Возвращает


$this

С

3.7.0

setRequest()source public

setRequest( Cake\Http\ServerRequest $request )

Устанавливает объекты запроса и настраивает ряд свойств контроллера на основе содержимого запроса. Устанавливаются следующие свойства:

  • $this->request - В параметр $request
  • $this->plugin - В значение, возвращаемое $request->getParam('plugin')
  • $this->passedArgs - То же, что и $request->params['pass]

Параметры

Cake\Http\ServerRequest $request
Экземпляр запроса.

Возвращает


$this

С

3.7.0

setResponse()source public

setResponse( Cake\Http\Response $response )

Устанавливает экземпляр ответа.

Параметры

Cake\Http\Response $response
Экземпляр ответа.

Возвращает


$this

С

3.7.0

setSubDir()source public

setSubDir( string $subDir )

Установить подкаталог для файлов шаблонов.

Параметры

строка $subDir
Имя подкаталога.

Возвращает


$this

См. также

\Cake\View\View::$subDir

С

3.7.0

setTemplate()source public

setTemplate( string $name )

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

Параметры

строка $name
Имя файла шаблона для установки.

Возвращает


$this

setTemplatePath()source public

setTemplatePath( string $path )

Установить путь для файлов шаблонов.

Параметры

строка $path
Путь для файлов шаблонов.

Возвращает


$this

setTheme()source public

setTheme( string|null $theme )

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

Параметры

строка|null $theme
Имя темы.

Возвращает


$this

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
Имя блока для захвата.

Возвращает


$this

См. также

\Cake\View\ViewBlock::start()

template()source public deprecated

template( string|null $name = null )

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

Устарело

3.5.0 Используйте getTemplate()/setTemplate() вместо этого.

Параметры

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

Возвращает

строка|null
END_OF_DOCUMENT_MARKER

templatePath()source public deprecated

templatePath( string|null $path = null )

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

Устаревшее

3.5.0 Используйте getTemplatePath()/setTemplatePath() вместо этого.

Параметры

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

Возвращает

string|null

theme()source public deprecated

theme( string|null $theme = null )

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

Устаревшее

3.5.0 Используйте getTheme()/setTheme() вместо этого.

Параметры

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

Возвращает

string|null

uuid()source public deprecated

uuid( string $object , string $url )

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

Устаревшее

3.7.0 Этот метод устарел и будет удален в версии 4.0.0.

Параметры

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 protected

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 deprecated

eventManager( Cake\Event\EventManager $eventManager = null )

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

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

Устаревшее

3.5.0 Используйте getEventManager()/setEventManager() вместо этого.

Параметры

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

Возвращает

Cake\Event\EventManager

getEventManager()source public

getEventManager( )

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

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

Возвращает

Cake\Event\EventManager

setEventManager()source public

setEventManager( Cake\Event\EventManager $eventManager )

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

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

Параметры

Cake\Event\EventManager $eventManager
менеджер событий для установки

Возвращает


$this

Методы, используемые из 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 deprecated

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)
]);

Устаревшее

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

Параметры

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 , mixed $value = null )

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

Параметры

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

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

Возвращаемое значение


$this

viewBuilder()source public

viewBuilder( )

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

Возвращаемое значение

Cake\View\ViewBuilder

viewOptions()source public deprecated

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

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

Устаревшее

3.7.0 Используйте ViewBuilder::setOptions() или любой из методов-сеттеров вместо этого.

Параметры

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

Флаг слияния с существующими или перезаписи существующих допустимых параметров представления. По умолчанию — true.

Возвращаемое значение

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

Магические методы, унаследованные от Cake\Event\EventDispatcherInterface

getEventManager()

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

$Blockssource

protected Cake\View\ViewBlock

Экземпляр ViewBlock.

$_currentsource

protected string

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

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

[]

$_viewBlockClasssource

protected string

Класс ViewBlock.

ViewBlock::class

$autoLayoutsource

protected boolean

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

true

$elementCachesource

protected string

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

См.

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

$hasRenderedsource

public boolean

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

Устаревшее

3.7.0 Свойство устарело и будет удалено в 4.0.0.
false

$helperssource

protected array

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

[]

$layoutsource

protected string

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

'default'

$layoutPathsource

protected string

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

$namesource

protected string

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

$passedArgssource

public array

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

Устаревшее

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

$pluginsource

protected строка|null

Имя плагина.

$requestsource

protected Cake\Http\ServerRequest

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

$responsesource

protected Cake\Http\Response

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

$subDirsource

protected строка

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

''

$templatesource

protected строка

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

$templatePathsource

protected строка

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

$themesource

protected строка|null

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

$uuidssource

public массив

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

Устаревшее

3.7.0 Свойство устарело и будет удалено в версии 4.0.0.
[]

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

$Blockssource

public Cake\View\ViewBlock

$Breadcrumbssource

public Cake\View\Helper\BreadcrumbsHelper

$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 строка

$viewPathsource

public строка

© 2005–present 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.7/class-Cake.View.View.html

Spec-Zone.ru

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