Класс 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
Унаследованные константы
Резюме свойств
-
$_responseTypeprotectedТип ответа.string -
$_specialVarsprotectedСписок специальных переменных представления.array -
$layoutPathprotectedXML-макеты находятся в подкаталоге xml каталогаstringLayouts/ -
$subDirprotectedXML-представления находятся в подкаталоге 'xml' для представлений контроллеров.string
Унаследованные магические свойства
-
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 - Данные для включения в отрисованное представление.
Возвращает
строкаРезультат отрисовки
_getElementFileName()source protected
_getElementFileName( string $name , boolean $pluginCheck = true )
Находит имя файла элемента, возвращает false при ошибке.
Параметры
- строка
$name - Имя элемента для поиска.
- логическое значение
$pluginCheckнеобязательно true - если false, будет игнорироваться плагин запроса, если плагин, который был распарсен, не загружен
Возвращает
строка|ложьСтрока с именем файла элемента или ложь, если элемент не найден.
_getLayoutFileName()source protected
_getLayoutFileName( string|null $name = null )
Возвращает имя файла макета для этого шаблона в виде строки.
Параметры
- строка|null
$nameнеобязательно null - Имя макета для поиска.
Возвращает
строкаИмя файла макета (.ctp).
Выбрасывает
Cake\View\Exception\MissingLayoutExceptionесли макет не найден
_getSubPaths()source protected
_getSubPaths( string $basePath )
Находит все пути к дочерним шаблонам, основанные на $basePath. Если в текущем запросе определён префикс, этот метод добавит префиксный путь шаблона к $basePath, переходя вверх по иерархии, если префикс вложен. По сути, используется для поиска префиксных путей шаблонов для элементов и макетов.
Параметры
- строка
$basePath - Базовый путь, для которого необходимо получить префиксный.
Возвращает
массивМассив со всеми путями шаблонов.
_getViewFileName()source protected
_getViewFileName( string|null $name = null )
Возвращает имя файла шаблона заданного действия (.ctp) в виде строки. Имена действий с верблюжьей нотацией будут преобразовываться в нижний регистр с символом подчеркивания по умолчанию. Это означает, что вы можете иметь имена действий LongActionNames, которые ссылаются на представления long_action_names.ctp. Вы можете изменить правило инфлексии, переопределив _inflectViewFileName.
Параметры
- строка|null
$nameнеобязательно null - Действие контроллера для поиска имени файла шаблона
Возвращает
строкаИмя файла шаблона
Выбрасывает
Cake\View\Exception\MissingTemplateExceptionесли файл представления не найден.
_inflectViewFileName()source protected
_inflectViewFileName( string $name )
Изменить имя файла шаблона представления на подчёркнутый формат.
Параметры
- строка
$name - Имя файла, которое должно быть преобразовано.
Возвращает
строкаИмя файла после преобразования
_paths()source protected
_paths( string|null $plugin = null , boolean $cached = true )
Возвращает все возможные пути к файлам представления в порядке
Параметры
- строка|null
$pluginнеобязательно null - Необязательное имя плагина для сканирования файлов представления.
- логическое значение
$cachedнеобязательно true - Установите в значение false, чтобы принудительно обновить пути представления. По умолчанию true.
Возвращает
массивпути
_render()source protected
_render( string $viewFile , array $data = [] )
Отрисовывает и возвращает вывод для заданного имени файла шаблона с его массивом данных. Обрабатывает родительские/расширенные шаблоны.
Параметры
- строка
$viewFile - Имя файла представления
- массив
$dataнеобязательно [] Данные для включения в отрисованное представление. Если пусто, будут использоваться текущие View::$viewVars.
Возвращает
строкаРезультат отрисовки
Выбрасывает
LogicExceptionКогда блок оставлен открытым.
Вызывает
View.beforeRenderFile $this, [$viewFile]View.afterRenderFile $this, [$viewFile, $content]
_renderElement()source protected
_renderElement( string $file , array $data , array $options )
Отрисовывает элемент и вызывает перед и после отрисовки обратные вызовы для него и записывает в кеш, если используется кеш
Параметры
- строка
$file - Путь к файлу элемента
- массив
$data - Данные для отрисовки
- массив
$options - Опции элемента
Возвращает
строкаВызывает
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 устарело
autoLayout( boolean|null $autoLayout = null )
Включает или отключает традиционный режим CakePHP для применения файлов макета. По умолчанию включено. Отключение означает, что макеты не будут автоматически применяться к отрисованным шаблонам.
Устарело
3.5.0 Используйте isAutoLayoutEnabled()/enableAutoLayout() вместо этого.Параметры
- логическое значение|null
$autoLayoutнеобязательно null - Логическое значение для включения/отключения. Если null, возвращает текущее значение.
Возвращает
логическое значение|nullblocks()source public
blocks( )
Получить имена всех существующих блоков.
Возвращает
массивМассив, содержащий блоки.
См. также
\Cake\View\ViewBlock::keys()cache()source public
cache( callable $block , array $options = [] )
Создать кэшированный блок логики представления.
Это позволяет кэшировать блок вывода представления в кеш, определённом в elementCache.
Этот метод сначала попытается прочитать кеш. Если кеш пуст, $block будет запущен, и результат будет сохранён.
Параметры
- вызываемый объект
$block - Блок кода, для которого вы хотите кэшировать вывод.
- массив
$optionsнеобязательно [] - Опции, определяющие ключ кеша и т. д.
Возвращает
строкаОтрисованное содержимое.
Выбрасывает
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. Если элемент не найден в плагине, будет осуществлен поиск по стандартному пути к представлениям.
Возвращает
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 - Имя блока
Возвращает
booleanextend()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.
Возвращает
строкаgetName()source public
getName( )
Возвращает имя контроллера представления.
Возвращает
строка|nullС версии
3.7.7getRequest()source public
getRequest( )
Получает экземпляр запроса.
Возвращает
Cake\Http\ServerRequest\
С версии
3.7.0getResponse()source public
getResponse( )
Получает экземпляр ответа.
Возвращает
Cake\Http\Response\
С версии
3.7.0getSubDir()source public
getSubDir( )
Получить поддиректорию для файлов шаблонов.
Возвращает
строкаСм. также
\Cake\View\View::$subDirС версии
3.7.0getTemplate()source public
getTemplate( )
Получить имя файла шаблона для отображения. Указанное имя — это имя файла в /src/Template/
Возвращает
строкаgetTemplatePath()source public
getTemplatePath( )
Получить путь к файлам шаблонов.
Возвращает
строкаgetVars()source public
getVars( )
Возвращает список переменных, доступных в текущем контексте представления.
Возвращает
string[]Массив имён установленных переменных представления.
helpers()source public
helpers( )
Получает реестр помощников, используемый этим классом представления.
Возвращает
Cake\View\HelperRegistryinitialize()source public
initialize( )
Метод начальной инициализации.
Свойства, такие как $helpers и т. д., не могут быть статически инициализированы в вашем пользовательском классе представления, так как они перезаписываются значениями из контроллера в конструкторе. Поэтому этот метод позволяет манипулировать ими по мере необходимости после создания экземпляра представления.
isAutoLayoutEnabled()source public
isAutoLayoutEnabled( )
Возвращает, включен ли стандартный режим CakePHP применения файлов шаблона макета. Выключенный режим означает, что макеты не будут автоматически применяться к рендеримым представлениям.
Возвращает
booleanlayout()source public deprecated
layout( string|null $name = null )
Получить/установить имя файла шаблона макета, в котором нужно рендерить шаблон. Указанное имя является именем файла макета в /src/Template/Layout без расширения .ctp.
Устарело
3.5.0 Используйте getLayout()/setLayout() вместо этого.Параметры
- string|null
$nameнеобязательно null - Имя файла макета для установки. Если null, возвращает текущее имя.
Возвращает
string|nulllayoutPath()source public deprecated
layoutPath( string|null $path = null )
Получить/установить путь к файлам макета.
Устарело
3.5.0 Используйте getLayoutPath()/setLayoutPath() вместо этого.Параметры
- string|null
$pathнеобязательно null - Путь к файлам макета. Если null, возвращает текущий путь.
Возвращает
string|nullloadHelper()source public
loadHelper( string $name , array $config = [] )
Загружает помощника. Делегирует загрузку помощника HelperRegistry::load().
Параметры
- string
$name - Имя помощника для загрузки.
- array
$configнеобязательно [] - Настройки для помощника
Возвращает
Cake\View\Helperобъект построенного помощника.
См. также
\Cake\View\HelperRegistry::load()pluginSplit()source public
pluginSplit( string $name , boolean $fallback = true )
Разделяет имя плагина в формате с точкой на его имя плагина и имя файла. Если в $name нет точки, то индекс 0 будет null. Проверяет, загружен ли плагин, иначе имя файла остаётся неизменным для имён файлов, содержащих точку.
Параметры
- string
$name - Имя плагина, которое вы хотите разделить.
- boolean
$fallbackнеобязательно true - Если true, использует плагин, установленный в текущем запросе, если загруженный плагин не найден.
Возвращает
arrayМассив с 2 индексами. 0 => имя плагина, 1 => имя файла
prepend()source public
prepend( string $name , mixed $value )
Добавляет в начало существующего или нового блока.
Добавление в начало нового блока создаст этот блок.
Параметры
- string
$name - Имя блока
- mixed
$value Содержание блока. Значение будет преобразовано в строку.
Возвращает
$this
См. также
\Cake\View\ViewBlock::concat()renderLayout()source public
renderLayout( string $content , string|null $layout = null )
Рендерит макет. Возвращает вывод от _render(). Возвращает false при ошибке. Несколько переменных создаются для использования в макете.
Параметры
- string
$content - Содержание для рендеринга в шаблоне, заключенное в окружающий макет.
- string|null
$layoutнеобязательно null - Имя макета
Возвращает
mixedРендерированный вывод или false при ошибке
Выбрасывает
Cake\Core\Exception\Exceptionесли возникла ошибка в представлении.
Вызывает
View.beforeLayout $this, [$layoutFileName]View.afterLayout $this, [$layoutFileName]
reset()source public
reset( string $name )
Сбросить содержимое блока. Это перезапишет любое существующее содержимое.
Параметры
- string
$name - Имя блока
Возвращает
$this
См. также
\Cake\View\ViewBlock::set()setElementCache()source public
setElementCache( string $elementCache )
Установить конфигурацию кэша, которую представление будет использовать для хранения кэшированных элементов.
Параметры
- string
$elementCache - Имя конфигурации кэша.
Возвращает
$this
См. также
\Cake\View\View::$elementCacheС тех пор
3.7.0setLayout()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.0setRequest()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.0setResponse()source public
setResponse( Cake\Http\Response $response )
Устанавливает экземпляр ответа.
Параметры
-
Cake\Http\Response$response - Экземпляр ответа.
Возвращает
$this
С тех пор
3.7.0setSubDir()source public
setSubDir( string $subDir )
Установить подкаталог для файлов шаблонов.
Параметры
- string
$subDir - Имя подкаталога.
Возвращает
$this
См. также
\Cake\View\View::$subDirС тех пор
3.7.0setTemplate()source public
setTemplate( string $name )
Установите имя файла шаблона для рендеринга. Указанное имя — это имя файла в /src/Template/
Параметры
- 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/
Устаревшее
3.5.0 Используйте getTemplate()/setTemplate() вместо этого.Параметры
- string|null
$nameнеобязательно null - Имя файла шаблона для установки. Если null, возвращает текущее имя.
Возвращает
string|nulltemplatePath()source public deprecated
templatePath( string|null $path = null )
Получить/установить путь к файлам шаблонов.
Устаревшее
3.5.0 Используйте getTemplatePath()/setTemplatePath() вместо этого.Параметры
- string|null
$pathнеобязательно null - Путь к файлам шаблонов. Если null, возвращает текущий путь.
Возвращает
string|nulltheme()source public deprecated
theme( string|null $theme = null )
Тема представления для использования.
Устаревшее
3.5.0 Используйте getTheme()/setTheme() вместо этого.Параметры
- string|null
$themeнеобязательно null - Имя темы. Если null, возвращает текущую тему.
Возвращает
string|nulluuid()source public deprecated
uuid( string $object , string $url )
Генерирует уникальный, не случайный ID DOM для объекта на основе типа объекта и целевого URL.
Устаревшее
3.7.0 Этот метод устарел и будет удален в версии 4.0.0.Параметры
- string
$object - Тип объекта, например, «форма» или «ссылка»
- string
$url - Целевой URL объекта
Возвращает
stringМетоды, используемые из Cake\View\CellTrait
_createCell()source protected
_createCell( string $className , string $action , string $plugin , array $options )
Создайте и настройте экземпляр ячейки.
Параметры
- string
$className - Имя класса ячейки.
- string
$action - Имя действия.
- string
$plugin - Имя плагина.
- array
$options - Параметры конструктора для ячейки.
Возвращает
Cake\View\Cellcell()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\EventeventManager()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\EventManagergetEventManager()source public
getEventManager( )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации новых слушателей или обратных вызовов событий объекта, или создавать собственные события и вызывать их по мере необходимости.
Возвращает
Cake\Event\EventManagersetEventManager()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'); Базовый пример request action для получения отрисованной страницы без шаблона.
$viewHtml = $this->requestAction('/articles/popular', ['return']); Вы также можете передать URL в виде массива:
$vars = $this->requestAction(['controller' => 'articles', 'action' => 'popular']);
Передача других данных запроса
Вы можете передавать данные POST, GET, COOKIE и другие данные в запрос, используя соответствующие ключи. Куки могут быть переданы с помощью ключа cookies. Параметры GET могут быть установлены с помощью query, а данные POST могут быть отправлены с помощью ключа post.
$vars = $this->requestAction('/articles/popular', [
'query' => ['page' => 1],
'cookies' => ['remember_me' => 1],
]); Отправка значений среды или заголовков
По умолчанию действия, отправленные с помощью этого метода, будут использовать глобальные значения $_SERVER и $_ENV. Если вы хотите переопределить эти значения для действия request, вы можете указать значения:
$vars = $this->requestAction('/articles/popular', [
'environment' => ['CONTENT_TYPE' => 'application/json']
]); Передача сессии
По умолчанию действия, вызываемые этим методом, будут использовать стандартный объект сессии. Если вы хотите использовать конкретный экземпляр сессии, вам необходимо его указать.
$vars = $this->requestAction('/articles/popular', [
'session' => new Session($someSessionConfig)
]); Устаревший
3.3.0 Вы должны переписать свой код, чтобы использовать View Cells вместо этого метода.Параметры
- строка|массив
$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\ViewBuilderviewOptions()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() |
Подробности свойств
$_specialVarssource
protected массив
Список специальных переменных представления.
['_serialize', '_rootNode', '_xmlOptions']
$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.7/class-Cake.View.XmlView.html