Spec-Zone.ru › CakePHP 3.8

Класс XmlView

Класс представления, используемый для создания XML-ответов.

Установив ключ '_serialize' в своём контроллере, вы можете указать переменную представления, которая должна быть сериализована в XML и использована как ответ на запрос. Это позволяет опустить представления + макеты, если вам нужно только вывести одну переменную представления в качестве XML-ответа.

В вашем контроллере вы можете сделать следующее:

$this->set(['posts' => $posts, '_serialize' => true]);

При отрисовке представления, переменная $posts будет сериализована в XML.

Примечание Переменная представления, которую вы указываете, должна быть совместима с Xml::fromArray().

Вы также можете определить '_serialize' в виде массива. Это создаст дополнительный элемент верхнего уровня с именем <response>, содержащий все именованные переменные представления:

$this->set(compact('posts', 'users', 'stuff'));
$this->set('_serialize', true);

Вышеприведённый код сгенерирует XML-объект, который выглядит следующим образом:

<response><posts>...</posts><users>...</users></response>

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

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

Cake\View\View implements Cake\Event\EventDispatcherInterface uses Cake\View\CellTrait , Cake\Event\EventDispatcherTrait , Cake\Log\LogTrait , Cake\Routing\RequestActionTrait , Cake\View\ViewVarsTrait
Расширяется Cake\View\SerializedView
Расширяется Cake\View\XmlView
Пространство имён: Cake\View
Расположение: View/XmlView.php

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

  • NAME_ELEMENT, NAME_TEMPLATE, TYPE_ELEMENT, TYPE_LAYOUT, TYPE_TEMPLATE, TYPE_VIEW

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

  • $_responseType protected
    string
    Тип ответа.
  • $_specialVars protected
    array
    Список специальных переменных представления.
  • $layoutPath protected
    string
    XML-макеты находятся в подкаталоге xml каталога Layouts/
  • $subDir protected
    string
    XML-представления находятся в подкаталоге 'xml' для представлений контроллеров.

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

  • Blocks, Breadcrumbs, Flash, Form, Html, Number, Paginator, Rss, Session, Text, Time, Url, view, viewPath _validViewOptions

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

  • Blocks, _current, _currentType, _ext, _helpers, _parents, _passedVars, _paths, _pathsForPlugin, _stack, _viewBlockClass, autoLayout, elementCache, hasRendered, helpers, layout, name, passedArgs, plugin, request, response, template, templatePath, theme, uuids _eventClass, _eventManager _viewBuilder, viewClass, viewVars

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

  • _serialize() protected
    Сериализация переменных представления.

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

_serialize()source protected

_serialize( array|string $serialize )

Сериализация переменных представления.

Специальные параметры

_xmlOptions Вы можете установить массив пользовательских опций для Xml::fromArray() таким образом, например, 'format' как 'attributes' вместо 'tags'.

Параметры

массив|строка $serialize
Имя(а) переменной(ых) представления, которая(ые) должна(ы) быть(и) сериализована(ы)

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

строка
Сериализованные данные

Методы, унаследованные от Cake\View\SerializedView

__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 необязательно null
Экземпляр запроса.
Cake\Http\Response $response необязательно null
Экземпляр ответа.
Cake\Event\EventManager $eventManager необязательно null
Экземпляр EventManager.
массив $viewOptions необязательно []
Массив опций представления

Переопределяет

Cake\View\View::__construct()

loadHelpers()source public

loadHelpers( )

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

Переопределяет

Cake\View\View::loadHelpers()

render()source public

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

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

Специальные параметры

_serialize Чтобы преобразовать набор переменных представления в сериализованную форму. Его значение может быть строкой для имени одной переменной или массивом для нескольких имён. Если true, все переменные представления будут сериализованы. Если не задано, будет рендериться обычный шаблон представления.

Параметры

строка|булево|null $view необязательно null
Отображаемое представление.
строка|null $layout необязательно null
Отображаемый макет.

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

строка|null
Отображаемое представление.

Исключения

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

Переопределяет

Cake\View\View::render()

Методы, унаследованные от Cake\View\View

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

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

строка
Результат отрисовки
END_OF_DOCUMENT_MARKER ```

_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) в виде строки. Имена действий с верблюжьей нотацией по умолчанию будут преобразовываться в нижний регистр с подчеркиванием. Это означает, что вы можете иметь 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 )

Выводит элемент и вызывает обратные вызовы 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 optional 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 optional 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 optional []
Параметры, определяющие ключ кэша и т. д.

Возвращает

string
Отформатированное содержимое.

Выбрасывает

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

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

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

Возвращает

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

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

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

setElementCache()source public

setElementCache( string $elementCache )

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

Параметры

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

Возвращает


$this

См. также

\Cake\View\View::$elementCache

С версии

3.7.0

setLayout()source public

setLayout( string $name )

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

Параметры

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

Возвращает


$this

setLayoutPath()source public

setLayoutPath( string $path )

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

Параметры

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

Возвращает


$this

setPlugin()source public

setPlugin( string $name )

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

Параметры

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

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

Параметры

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

Возвращает


$this

См. также

\Cake\View\View::$subDir

С версии

3.7.0

setTemplate()source public

setTemplate( string $name )

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

Параметры

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

templatePath()source public deprecated

templatePath( string|null $path = null )

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

Устарело

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

Параметры

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

Возвращает

строка|null

theme()source public deprecated

theme( string|null $theme = null )

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

Устарело

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

Параметры

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

Возвращает

строка|null

uuid()source public deprecated

uuid( string $object , string $url )

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

Устарело

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

Параметры

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

Возвращает

строка

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

_createCell()source protected

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

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

Параметры

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

Возвращает

Cake\View\Cell

cell()source 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');

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

Параметры

строка $cell

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

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

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

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

Возвращает

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

Выбрасывает

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

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

dispatchEvent()source public

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

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

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

Параметры

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

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

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

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

Возвращает

Cake\Event\Event

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() для получения дополнительной информации о записи в журналы.

Параметры

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

Возвращает

boolean
Успех записи в журнал.

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

requestAction()source public устаревшее

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

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

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

Примеры

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

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

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

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

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

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

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

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

Устаревшее

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

Параметры

строка|массив $url

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

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

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

Возвращает

смешанное

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


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

createView()source public

createView( string|null $viewClass = null )

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

Параметры

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

Возвращает

Cake\View\View

Выбрасывает

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

set()source public

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

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

Параметры

строка|массив $name
Строка или массив данных.
смешанное $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().

Устаревшее

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

Параметры

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

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

Возвращает

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

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

getEventManager()

Подробности свойств

$_responseTypesource

protected строка

Тип ответа.

'xml'

$_specialVarssource

protected массив

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

['_serialize', '_rootNode', '_xmlOptions']

$layoutPathsource

protected строка

XML макеты находятся в подкаталоге xml по адресу Layouts/

'xml'

$subDirsource

protected строка

XML представления расположены в подкаталоге 'xml' для представлений контроллеров.

'xml'

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

Spec-Zone.ru

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