Spec-Zone.ru › CakePHP 3.6

Класс View

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

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

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

public function beforeRender(\Cake\Event\Event $event)
{
     $this->viewBuilder()->setTheme('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

    NAME_ELEMENT
    'Element'
  • string

    NAME_TEMPLATE
    'Template'
  • 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();
  • $_viewBlockClass protected
    string
    Класс ViewBlock.
  • $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\Http\ServerRequest

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

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

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

  • $template public
    string

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

  • $templatePath public
    string
    Имя подкаталога, содержащего шаблоны для этого представления.
  • $theme public
    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
    Создание кэшированного блока логики представления.
  • 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
    Получение пути к файлам макетов.
  • 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

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

  • setLayout() public

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

  • setLayoutPath() 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
    Генерирует уникальный, не случайный идентификатор 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
Экземпляр диспетчера событий.
array $viewOptions optional []

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

__get()source public

__get( string $name )

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

Параметры

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

Возвращает

mixed

__set()source public

__set( string $name , mixed $value )

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

Параметры

string $name
Имя свойства.
mixed $value
Значение свойства.

_checkFilePath()source protected

_checkFilePath( string $file , string $path )

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

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

Параметры

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

Возвращает

string
Путь к файлу

Выбрасывает

InvalidArgumentException

_elementCache()source protected

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

Генерация параметров кэширования для элемента.

Параметры

string $name
Имя элемента
array $data
Данные
array $options
Параметры элемента

Возвращает

array
Настройки кэширования элемента.

_evaluate()source protected

_evaluate( string $viewFile , array $dataForView )

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

Параметры

string $viewFile
Имя файла представления
array $dataForView
Данные для включения в рендер.

Возвращает

string
Результат рендеринга

_getElementFileName()source protected

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

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

Параметры

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

Возвращает

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

_getLayoutFileName()source protected

_getLayoutFileName( string|null $name = null )

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

Параметры

string|null $name optional null
Имя макета для поиска.

Возвращает

string
Имя файла макета (.ctp).

Выбрасывает

Cake\View\Exception\MissingLayoutException
если макет не найден

_getSubPaths()source protected

_getSubPaths( string $basePath )

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

Параметры

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

Возвращает

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

_getViewFileName()source protected

_getViewFileName( string|null $name = null )

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

Параметры

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

Возвращает

string
Имя файла шаблона

Выбрасывает

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

_inflectViewFileName()source protected

_inflectViewFileName( string $name )

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

Параметры

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

Возвращает

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

_paths()source protected

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

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

Параметры

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

Возвращает

array
Пути

_render()source protected

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

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

Параметры

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

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

Возвращает

string
Результат рендеринга

Выбрасывает

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

Вызывает

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

_renderElement()source protected

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

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

Параметры

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 )

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

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

Параметры

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

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::concat()

assign()source public

assign( string $name , mixed $value )

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

Параметры

строка $name
Имя блока
смешанный $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 будет выполнен, и результат будет сохранен.

Параметры

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

Возвращает

boolean
Успешно

enableAutoLayout()source public

enableAutoLayout( boolean $enable = true )

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

Параметры

boolean $enable необязательный true
Булево значение для включения/выключения.

Возвращает


$this

end()source public

end( )

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::end()

exists()source public

exists( string $name )

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

Параметры

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

Возвращает

boolean

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.

Возвращает

строка
END_OF_DOCUMENT_MARKER

getLayoutPath()source public

getLayoutPath( )

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

Возвращает

string

getTemplate()source public

getTemplate( )

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

Возвращает

string

getTemplatePath()source public

getTemplatePath( )

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

Возвращает

string

getTheme()source public

getTheme( )

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

Возвращает

string|null

getVars()source public

getVars( )

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

Возвращает

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

helpers()source public

helpers( )

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

Возвращает

Cake\View\HelperRegistry

initialize()source public

initialize( )

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

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

isAutoLayoutEnabled()source public

isAutoLayoutEnabled( )

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

Возвращает

boolean

layout()source public deprecated

layout( string|null $name = null )

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

Устарело

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

Параметры

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

Возвращает

string|null

layoutPath()source public deprecated

layoutPath( string|null $path = null )

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

Устарело

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

Параметры

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

Возвращает

string|null

loadHelper()source public

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

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

Параметры

string $name
Имя помощника для загрузки.
array $config optional []
Настройки помощника

Возвращает

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

Параметры

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

Возвращает

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

prepend()source public

prepend( string $name , mixed $value )

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

Добавление в начало нового блока создаст блок.

Параметры

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

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::concat()

render()source public

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

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

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

  • beforeRender
  • afterRender
  • beforeLayout
  • afterLayout

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

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

Параметры

string|false|null $view optional null
Имя файла представления для использования
string|null $layout optional 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 optional null
Имя макета

Возвращает

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

Исключения

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

Вызывает

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

reset()source public

reset( string $name )

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

Параметры

string $name
Имя блока

Возвращает


$this

См. также

\Cake\View\ViewBlock::set()

setLayout()source public

setLayout( string $name )

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

Параметры

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

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


$this

setLayoutPath()source public

setLayoutPath( string $path )

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

Параметры

string $path
Путь к файлам макета.

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


$this

setTemplate()source public

setTemplate( string $name )

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

Параметры

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

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


$this

setTemplatePath()source public

setTemplatePath( string $path )

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

Параметры

string $path
Путь к файлам шаблонов.

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


$this

setTheme()source public

setTheme( string|null $theme )

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

Параметры

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

Параметры

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

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


$this

См. также

\Cake\View\ViewBlock::start()

template()source public deprecated

template( string|null $name = null )

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

Устарело

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

Параметры

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

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

string|null

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

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 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
устанавливаемый eventManager

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

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
устанавливаемый 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 устаревший

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

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

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

Примеры

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

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

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

$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. Если вы хотите переопределить эти значения для действия requestAction, вы можете указать значения:

$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

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

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

Параметры

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

Булево значение: сливать или перезаписывать существующие допустимые опции представления. По умолчанию true.

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

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

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

getEventManager()

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

$Blockssource

public 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

public boolean

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

true

$elementCachesource

public string

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

См.

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

$hasRenderedsource

public boolean

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

false

$helperssource

public array

Массив имён встроенных помощников (helpers), которые нужно включить.

[]

$layoutsource

public string

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

'default'

$layoutPathsource

public string

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

$namesource

public string

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

$passedArgssource

public array

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

Устарело

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

$pluginsource

public string

Имя плагина.

$requestsource

public Cake\Http\ServerRequest

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

$responsesource

public Cake\Http\Response

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

$subDirsource

public string|null

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

$templatesource

public string

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

$templatePathsource

public string

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

$themesource

public string|null

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

$uuidssource

public array

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

[]

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

$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 string

$viewPathsource

public string

© 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.6/class-Cake.View.View.html

Spec-Zone.ru

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