Spec-Zone.ru › CakePHP 4.3

Класс View

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

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

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

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

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

Пространство имён: Cake\View

Константы

  • string
    NAME_TEMPLATE
    'templates'

    Константа для типа, используемого для App::path().

  • string
    PLUGIN_TEMPLATE_FOLDER
    'plugin'

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

  • string
    TYPE_ELEMENT
    'element'

    Константа для типа файла представления 'element'

  • string
    TYPE_LAYOUT
    'layout'

    Константа для типа файла представления 'layout'

  • string
    TYPE_TEMPLATE
    'template'

    Константа для типа файла представления 'template'.

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

  • $Blocks public @property
    Cake\View\ViewBlock
  • $Breadcrumbs public @property
    Cake\View\Helper\BreadcrumbsHelper
  • $Flash public @property
    Cake\View\Helper\FlashHelper
  • $Form public @property
    Cake\View\Helper\FormHelper
  • $Html public @property
    Cake\View\Helper\HtmlHelper
  • $Number public @property
    Cake\View\Helper\NumberHelper
  • $Paginator public @property
    Cake\View\Helper\PaginatorHelper
  • $Text public @property
    Cake\View\Helper\TextHelper
  • $Time public @property
    Cake\View\Helper\TimeHelper
  • $Url public @property
    Cake\View\Helper\UrlHelper
  • $_config protected
    array<string, mixed>

    Конфигурация выполнения

  • $_configInitialized protected
    bool

    Установлена ли конфигурация свойства со значениями по умолчанию

  • $_current protected
    string

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

  • $_currentType protected
    string

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

  • $_defaultConfig protected
    array<string, mixed>

    Значения конфигурации по умолчанию.

  • $_eventClass protected
    string

    Имя класса по умолчанию для новых объектов событий.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

  • $_ext protected
    string

    Расширение файла. По умолчанию «.php».

  • $_helpers protected
    Cake\View\HelperRegistry

    Коллекция хелперов

  • $_parents protected
    array<string>

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

  • $_passedVars protected
    array<string>

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

  • $_paths protected
    array<string>

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

  • $_pathsForPlugin protected
    array<string[]>

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

  • $_stack protected
    array<string>

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

  • $_viewBlockClass protected
    string

    Класс ViewBlock.

  • $autoLayout protected
    bool

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

  • $elementCache protected
    string

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

  • $helpers protected
    array

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

  • $layout protected
    string

    Имя файла макета для отрисовки шаблона внутри него. Указанное имя является именем файла макета в templates/layout/ без расширения .php.

  • $layoutPath protected
    string

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

  • $name protected
    string

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

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

    Имя файла шаблона для отрисовки. Указанное имя является именем файла в templates/<SubFolder>/ без расширения .php.

  • $templatePath protected
    string

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

  • $theme protected
    string|null

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

  • $viewVars protected
    array<string, mixed>

    Массив переменных.

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

  • __construct() public

    Конструктор

  • __get() public

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

  • _checkFilePath() protected

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

  • _configDelete() protected

    Удаляет один ключ конфигурации.

  • _configRead() protected

    Читает ключ конфигурации.

  • _configWrite() protected

    Записывает ключ конфигурации.

  • _createCell() protected

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

  • _elementCache() protected

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

  • _evaluate() protected

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

  • _getElementFileName() protected

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

  • _getLayoutFileName() protected

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

  • _getSubPaths() protected

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

  • _getTemplateFileName() protected

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

  • _inflectTemplateFileName() protected

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

  • _paths() protected

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

  • _render() protected

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

  • _renderElement() protected

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

  • append() public

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

  • assign() public

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

  • blocks() public

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

  • cache() public

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

  • cell() protected

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

  • configShallow() public

    Объединяет предоставленную конфигурацию с существующей конфигурацией. В отличие от config(), которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

  • disableAutoLayout() public

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

  • dispatchEvent() public

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

  • element() public

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

  • elementExists() public

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

  • enableAutoLayout() public

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

  • end() public

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

  • exists() public

    Проверяет, существует ли блок.

  • extend() public

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

  • fetch() public

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

  • get() public

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

  • getConfig() public

    Получение значения конфигурации.

  • getConfigOrFail() public

    Возвращает конфигурацию для указанного ключа.

  • getCurrentType() public

    Получение текущего типа шаблона.

  • getElementPaths() protected

    Получает итератор для путей элементов.

  • getEventManager() public

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

  • getLayout() public

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

  • getLayoutPath() public

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

  • getLayoutPaths() protected

    Получает итератор для путей макетов.

  • getName() public

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

  • getPlugin() public

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

  • getRequest() public

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

  • getResponse() public

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

  • getSubDir() public

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

  • getTemplate() public

    Получить имя файла шаблона для рендеринга. Указанное имя — имя файла в templates/<SubFolder>/ без расширения .php.

  • getTemplatePath() public

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

  • getTheme() public

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

  • getVars() public

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

  • helpers() public

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

  • initialize() public

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

  • isAutoLayoutEnabled() public

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

  • loadHelper() public

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

  • loadHelpers() public

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

  • log() public

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

  • pluginSplit() public

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

  • prepend() public

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

  • render() public

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

  • renderLayout() public

    Рендерит макет. Возвращает вывод от _render().

  • reset() public

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

  • set() public

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

  • setConfig() public

    Устанавливает конфигурацию.

  • setElementCache() public

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

  • setEventManager() public

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

  • setLayout() public

    Установить имя файла макета для рендеринга шаблона внутри него. Указанное имя — имя файла макета в templates/layout/ без расширения .php.

  • setLayoutPath() public

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

  • setPlugin() public

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

  • setRequest() public

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

  • setResponse() public

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

  • setSubDir() public

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

  • setTemplate() public

    Установить имя файла шаблона для рендеринга. Указанное имя — имя файла шаблона в templates/<SubFolder>/ без расширения .php.

  • setTemplatePath() public

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

  • setTheme() public

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

  • start() public

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

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

__construct() public

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

Конструктор

Параметры

Cake\Http\ServerRequest|null $request optional

Экземпляр запроса.

Cake\Http\Response|null $response optional

Экземпляр ответа.

Cake\Event\EventManager|null $eventManager optional

Экземпляр менеджера событий.

array<string, mixed> $viewOptions optional

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

__get() public

__get(string $name): Cake\View\Helper|null

Магический аксессор для вспомогательных функций.

Параметры

string $name

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

Возвращает

Cake\View\Helper|null

_checkFilePath() protected

_checkFilePath(string $file, string $path): string

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

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

Параметры

string $file

Путь к файлу шаблона.

string $path

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

Возвращает

string

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

InvalidArgumentException

_configDelete() protected

_configDelete(string $key): void

Удаляет один ключ конфигурации.

Параметры

string $key

Ключ для удаления.

Возвращает

void

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

Cake\Core\Exception\CakeException
если попытка перезаписать существующую конфигурацию

_configRead() protected

_configRead(string|null $key): mixed

Читает ключ конфигурации.

Параметры

string|null $key

Ключ для чтения.

Возвращает

mixed

_configWrite() protected

_configWrite(array<string, mixed>|string $key, mixed $value, string|bool $merge = false): void

Записывает ключ конфигурации.

Параметры

array<string, mixed>|string $key

Ключ для записи.

mixed $value

Значение для записи.

string|bool $merge optional

True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.

Возвращает

void

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

Cake\Core\Exception\CakeException
если попытка перезаписать существующую конфигурацию

_createCell() protected

_createCell(string $className, string $action, string|null $plugin, array<string, mixed> $options): Cake\View\Cell

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

Параметры

string $className

Имя класса ячейки.

string $action

Имя действия.

string|null $plugin

Имя плагина.

array<string, mixed> $options

Параметры конструктора для ячейки.

Возвращает

Cake\View\Cell

_elementCache() protected

_elementCache(string $name, array $data, array<string, mixed> $options): array

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

Параметры

string $name

Имя элемента

array $data

Данные

array<string, mixed> $options

Параметры элемента

Возвращает

array

_evaluate() protected

_evaluate(string $templateFile, array $dataForView): string

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

Параметры

string $templateFile

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

array $dataForView

Данные для включения в отображаемое представление.

Возвращает

string

_getElementFileName() protected

_getElementFileName(string $name, bool $pluginCheck = true): string|false

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

Параметры

string $name

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

bool $pluginCheck optional
  • если false, будет игнорировать плагин запроса, если проанализированный плагин не загружен

Возвращает

string|false

_getLayoutFileName() protected

_getLayoutFileName(string|null $name = null): string

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

Параметры

string|null $name optional

Имя макета для поиска.

Возвращает

string

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

Cake\View\Exception\MissingLayoutException
когда макет не может быть найден
RuntimeException

_getSubPaths() protected

_getSubPaths(string $basePath): array<string>

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

Параметры

string $basePath

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

Возвращает

array<string>

_getTemplateFileName() protected

_getTemplateFileName(string|null $name = null): string

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

Параметры

string|null $name optional

Действие контроллера, для которого нужно найти имя файла шаблона

Возвращает

string

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

Cake\View\Exception\MissingTemplateException
когда файл шаблона не может быть найден.
RuntimeException
Когда имя шаблона не указано.

_inflectTemplateFileName() protected

_inflectTemplateFileName(string $name): string

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

Параметры

string $name

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

Возвращает

string

_paths() protected

_paths(string|null $plugin = null, bool $cached = true): array<string>

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

Параметры

string|null $plugin optional

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

bool $cached optional

Установить в false, чтобы принудительно обновить пути к представлениям. По умолчанию true.

Возвращает

array<string>

_render() protected

_render(string $templateFile, array $data = []): string

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

Параметры

string $templateFile

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

array $data optional

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

Возвращает

string

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

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

_renderElement() protected

_renderElement(string $file, array $data, array<string, mixed> $options): string

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

Параметры

string $file

Путь к файлу элемента

array $data

Данные для отображения

array<string, mixed> $options

Параметры элемента

Возвращает

string

append() public

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

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

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

Параметры

string $name

Имя блока

mixed $value optional

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

Возвращает

$this

См. также

\Cake\View\ViewBlock::concat()

assign() public

assign(string $name, mixed $value): $this

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

Параметры

string $name

Имя блока

mixed $value

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

Возвращает

$this

См. также

\Cake\View\ViewBlock::set()

blocks() public

blocks(): array<string>

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

Возвращает

array<string>

См. также

\Cake\View\ViewBlock::keys()

cache() public

cache(callable $block, array<string, mixed> $options = []): string

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

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

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

Параметры

callable $block

Блок кода, для которого необходимо кэшировать вывод.

array<string, mixed> $options optional

Параметры, определяющие ключ кэша и т.д.

Возвращает

string

Выбрасывает

RuntimeException
Если в $options отсутствует опция 'key'.

cell() protected

cell(string $cell, array $data = [], array<string, mixed> $options = []): Cake\View\Cell

Отображает заданный элемент.

Пример:

// 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 optional

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

array<string, mixed> $options optional

Параметры для конструктора элемента

Возвращает

Cake\View\Cell

Выбрасывает

Cake\View\Exception\MissingCellException
Если класс элемента не найден.

configShallow() public

configShallow(array<string, mixed>|string $key, mixed|null $value = null): $this

Объединить предоставленные настройки с существующими настройками. В отличие от config(), который выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

Установка определенного значения:

$this->configShallow('key', $value);

Установка вложенного значения:

$this->configShallow('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

array<string, mixed>|string $key

Ключ для установки или полный массив настроек.

mixed|null $value optional

Значение для установки.

Возвращает

$this

disableAutoLayout() public

disableAutoLayout(): $this

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

Возвращает

$this

dispatchEvent() public

dispatchEvent(string $name, array|null $data = null, object|null $subject = null): Cake\Event\EventInterface

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

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

Параметры

string $name

Имя события.

array|null $data optional

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

object|null $subject optional

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

Возвращает

Cake\Event\EventInterface

element() public

element(string $name, array $data = [], array<string, mixed> $options = []): string

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

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

Параметры

string $name

Имя файла шаблона в папке templates/element/, или MyPlugin.template, чтобы использовать элемент шаблона из MyPlugin. Если элемент не найден в плагине, будет использоваться обычная цепочка поиска путей к представлению.

array $data optional

Массив данных, которые будут доступны отображаемому представлению (т.е. элементу).

array<string, mixed> $options optional

Массив параметров. Возможные ключи:

Возвращает

string

Выбрасывает

Cake\View\Exception\MissingElementException
Если элемент отсутствует, и `ignoreMissing` равен false.

elementExists() public

elementExists(string $name): bool

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

Параметры

string $name

Имя файла шаблона в папке templates/element/, или MyPlugin.template для проверки элемента шаблона из MyPlugin. Если элемент не найден в плагине, будет использоваться обычная цепочка поиска путей к представлению.

Возвращает

bool

enableAutoLayout() public

enableAutoLayout(bool $enable = true): $this

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

Параметры

bool $enable optional

Булево значение для включения/выключения.

Возвращает

$this

end() public

end(): $this

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

Возвращает

$this

См. также

\Cake\View\ViewBlock::end()

exists() public

exists(string $name): bool

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

Параметры

string $name

Имя блока

Возвращает

bool

extend() public

extend(string $name): $this

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

Параметры

string $name

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

Возвращает

$this

Выбрасывает

LogicException
при расширении шаблона самим собой или при создании циклов расширения.
LogicException
при расширении элемента, которого нет

fetch() public

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

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

Параметры

string $name

Имя блока

string $default необязательно

Текст по умолчанию

Возвращает

string

См. также

\Cake\View\ViewBlock::get()

get() public

get(string $var, mixed $default = null): mixed

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

Параметры

string $var

Переменная представления, содержимое которой требуется.

mixed $default необязательно

Значение по умолчанию/резервное содержимое $var.

Возвращает

mixed

getConfig() public

getConfig(string|null $key = null, mixed $default = null): mixed

Получить значение конфигурации.

В настоящее время, если конфигурация не установлена, происходит обращение к соответствующей переменной представления с префиксом «underscore». Использование специальных переменных представления с префиксом «underscore» устарело, и этот механизм обратной совместимости будет удален в CakePHP 4.1.0.

Параметры

string|null $key необязательно

Ключ для получения, или null для всей конфигурации.

mixed $default необязательно

Возвращаемое значение, если ключ не существует.

Возвращает

mixed

getConfigOrFail() public

getConfigOrFail(string $key): mixed

Возвращает конфигурацию для данного ключа.

Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.

Параметры

string $key

Ключ для получения.

Возвращает

mixed

Исключение

InvalidArgumentException

getCurrentType() public

getCurrentType(): string

Получить текущий тип шаблона

Возвращает

string

getElementPaths() protected

getElementPaths(string|null $plugin): Generator

Получить итератор путей к элементам.

Параметры

string|null $plugin

Плагин для получения путей.

Возвращает

Generator

getEventManager() public

getEventManager(): Cake\Event\EventManagerInterface

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

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

Возвращает

Cake\Event\EventManagerInterface

getLayout() public

getLayout(): string

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

Возвращает

string

getLayoutPath() public

getLayoutPath(): string

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

Возвращает

string

getLayoutPaths() protected

getLayoutPaths(string|null $plugin): Generator

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

Параметры

string|null $plugin

Плагин для получения путей.

Возвращает

Generator

getName() public

getName(): string

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

Возвращает

string

getPlugin() public

getPlugin(): string|null

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

Возвращает

string|null

getRequest() public

getRequest(): Cake\Http\ServerRequest

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

Возвращает

Cake\Http\ServerRequest

getResponse() public

getResponse(): Cake\Http\Response

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

Возвращает

Cake\Http\Response

getSubDir() public

getSubDir(): string

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

Возвращает

string

См. также

\Cake\View\View::$subDir

getTemplate() public

getTemplate(): string

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

Возвращает

string

getTemplatePath() public

getTemplatePath(): string

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

Возвращает

string

getTheme() public

getTheme(): string|null

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

Возвращает

string|null

getVars() public

getVars(): array<string>

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

Возвращает

array<string>

helpers() public

helpers(): Cake\View\HelperRegistry

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

Возвращает

Cake\View\HelperRegistry

initialize() public

initialize(): void

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

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

Возвращает

void

isAutoLayoutEnabled() public

isAutoLayoutEnabled(): bool

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

Возвращает

bool

loadHelper() public

loadHelper(string $name, array<string, mixed> $config = []): Cake\View\Helper

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

Параметры

string $name

Имя помощника для загрузки.

array<string, mixed> $config необязательно

Настройки помощника.

Возвращает

Cake\View\Helper

См. также

\Cake\View\HelperRegistry::load()

loadHelpers() public

loadHelpers(): $this

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

Возвращает

$this

log() public

log(string $message, string|int $level = LogLevel::ERROR, array|string $context = []): bool

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

Параметры

string $message

Сообщение журнала.

string|int $level необязательно

Уровень ошибки.

array|string $context необязательно

Дополнительные данные журнала, относящиеся к этому сообщению.

Возвращает

bool

pluginSplit() public

pluginSplit(string $name, bool $fallback = true): array

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

Parameters

string $name

Имя, которое нужно разделить на плагин.

bool $fallback optional

Если true, использует плагин, установленный в текущем запросе, когда разобранный плагин не загружен

Returns

array

prepend() public

prepend(string $name, mixed $value): $this

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

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

Parameters

string $name

Имя блока

mixed $value

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

Returns

$this

See Also

\Cake\View\ViewBlock::concat()

render() public

render(string|null $template = null, string|false|null $layout = null): string

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

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

  • beforeRender
  • afterRender
  • beforeLayout
  • afterLayout

Если View::$autoLayout установлено в false, шаблон будет возвращен без изменений.

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

Parameters

string|null $template optional

Имя файла шаблона для использования

string|false|null $layout optional

Макет для использования. False для отключения.

Returns

string

Throws

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

renderLayout() public

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

Рендерит макет. Возвращает вывод из _render().

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

Parameters

string $content

Контент для рендеринга в шаблоне, заключённый в окружающий макет.

string|null $layout optional

Имя макета

Returns

string

Throws

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

reset() public

reset(string $name): $this

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

Parameters

string $name

Имя блока

Returns

$this

See Also

\Cake\View\ViewBlock::set()

set() public

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

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

Parameters

array|string $name

Строка или массив данных.

mixed $value optional

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

Returns

$this

Throws

RuntimeException
Если операция объединения массивов завершилась неудачей.

setConfig() public

setConfig(array<string, mixed>|string $key, mixed|null $value = null, bool $merge = true): $this

Устанавливает конфигурацию.

Usage

Установка конкретного значения:

$this->setConfig('key', $value);

Установка вложенного значения:

$this->setConfig('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->setConfig(['one' => 'value', 'another' => 'value']);

Parameters

array<string, mixed>|string $key

Ключ для установки или полный массив конфигураций.

mixed|null $value optional

Значение для установки.

bool $merge optional

Следует ли рекурсивно объединять или перезаписывать существующую конфигурацию, по умолчанию true.

Returns

$this

Throws

Cake\Core\Exception\CakeException
При попытке установить недопустимый ключ.

setElementCache() public

setElementCache(string $elementCache): $this

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

Parameters

string $elementCache

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

Returns

$this

See Also

\Cake\View\View::$elementCache

setEventManager() public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

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

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

Parameters

Cake\Event\EventManagerInterface $eventManager

eventManager для установки

Returns

$this

setLayout() public

setLayout(string $name): $this

Устанавливает имя файла макета для рендеринга шаблона внутри него. Указанное имя - это имя файла макета в templates/layout/ без расширения .php.

Parameters

string $name

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

Returns

$this

setLayoutPath() public

setLayoutPath(string $path): $this

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

Parameters

string $path

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

Returns

$this

setPlugin() public

setPlugin(string|null $name): $this

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

Parameters

string|null $name

Имя плагина.

Returns

$this

setRequest() public

setRequest(Cake\Http\ServerRequest $request): $this

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

  • $this->request - в параметр $request
  • $this->plugin - в значение, возвращаемое $request->getParam('plugin')

Parameters

Cake\Http\ServerRequest $request

Экземпляр запроса.

Returns

$this

setResponse() public

setResponse(Cake\Http\Response $response): $this

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

Parameters

Cake\Http\Response $response

Экземпляр ответа.

Returns

$this

setSubDir() public

setSubDir(string $subDir): $this

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

Parameters

string $subDir

Имя подкаталога.

Returns

$this

See Also

\Cake\View\View::$subDir

setTemplate() public

setTemplate(string $name): $this

Устанавливает имя файла шаблона для рендеринга. Указанное имя - это имя файла в templates/<SubFolder>/ без расширения .php.

Parameters

string $name

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

Returns

$this

setTemplatePath() public

setTemplatePath(string $path): $this

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

Параметры

string $path

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

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

$this

setTheme() public

setTheme(string|null $theme): $this

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

Параметры

string|null $theme

Имя темы.

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

$this

start() public

start(string $name): $this

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

Можно использовать 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()

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

$Blocks public @property

Тип

Cake\View\ViewBlock

$Breadcrumbs public @property

Тип

Cake\View\Helper\BreadcrumbsHelper

$Flash public @property

Тип

Cake\View\Helper\FlashHelper

$Form public @property

Тип

Cake\View\Helper\FormHelper

$Html public @property

Тип

Cake\View\Helper\HtmlHelper

$Number public @property

Тип

Cake\View\Helper\NumberHelper

$Paginator public @property

Тип

Cake\View\Helper\PaginatorHelper

$Text public @property

Тип

Cake\View\Helper\TextHelper

$Time public @property

Тип

Cake\View\Helper\TimeHelper

$Url public @property

Тип

Cake\View\Helper\UrlHelper

$_config protected

Конфигурация выполнения

Тип

array<string, mixed>

$_configInitialized protected

Указывает, была ли свойство конфигурации уже настроена по умолчанию

Тип

bool

$_current protected

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

Тип

string

$_currentType protected

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

Тип

string

$_defaultConfig protected

Настройки конфигурации по умолчанию.

Тип

array<string, mixed>

$_eventClass protected

Имя класса по умолчанию для новых объектов событий.

Тип

string

$_eventManager protected

Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

Тип

Cake\Event\EventManagerInterface|null

$_ext protected

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

Тип

string

$_helpers protected

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

Тип

Cake\View\HelperRegistry

$_parents protected

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

Тип

array<string>

$_passedVars protected

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

Тип

array<string>

$_paths protected

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

Тип

array<string>

$_pathsForPlugin protected

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

Тип

array<string[]>

$_stack protected

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

Тип

array<string>

$_viewBlockClass protected

Класс ViewBlock.

Тип

string

$autoLayout protected

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

Тип

bool

$elementCache protected

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

Тип

string

$helpers protected

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

Тип

array

$layout protected

Имя файла макета для отображения шаблона внутри. Указанное имя — это имя файла макета в templates/layout/ без расширения .php.

Тип

string

$layoutPath protected

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

Тип

string

$name protected

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

Тип

string

$plugin protected

Имя плагина.

Тип

string|null

$request protected

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

Тип

Cake\Http\ServerRequest

$response protected

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

Тип

Cake\Http\Response

$subDir protected

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

Тип

string

$template protected

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

Тип

string

$templatePath protected

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

Тип

string

$theme protected

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

Тип

string|null

$viewVars protected

Массив переменных

Тип

array<string, mixed>

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

Spec-Zone.ru

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