Spec-Zone.ru › CakePHP 2.9

Класс XmlView

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

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

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

$this->set(array('posts' => $posts, '_serialize' => 'posts'));

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

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

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

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

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

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

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

CakeObject
Extended by Представление
Extended by XmlView
Пакет: Cake\Представление
С версии: CakePHP(tm) v 2.1.0
Авторское право: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/View/XmlView.php

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

  • TYPE_ELEMENT, TYPE_LAYOUT, TYPE_VIEW

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

  • $subDir public
    string
    Поддиректория. XML-представления всегда находятся в xml.

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

  • Blocks, Cache, Form, Html, Js, Number, Paginator, Rss, Session, Text, Time

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

  • Blocks, Helpers, _current, _currentType, _eventManager, _eventManagerConfigured, _parents, _passedVars, _paths, _pathsForPlugin, _scripts, _stack, autoLayout, cacheAction, elementCache, elementCacheSettings, ext, hasRendered, helpers, layout, layoutPath, name, passedArgs, plugin, request, response, theme, uuids, validationErrors, view, viewVars

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

  • __construct() public
    Конструктор
  • _serialize() protected
    Сериализация переменных представления.
  • loadHelpers() public
    Пропуск загрузки помощников, если это представление, основанное на _serialize.
  • render() public
    Отрисовка XML-представления.

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

__construct()source public

__construct( Controller $controller null )

Конструктор

Параметры

Controller $controller необязательный null
Экземпляр контроллера.

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

View::__construct()

_serialize()source protected

_serialize( array $serialize )

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

Особые параметры

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

Параметры

массив $serialize
Переменные представления, которые нужно сериализовать.

Возвращает

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

loadHelpers()source public

loadHelpers( )

Пропуск загрузки помощников, если это представление, основанное на _serialize.

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

View::loadHelpers()

render()source public

render( string $view null , string $layout null )

Отрисовка XML-представления.

Использует специальный параметр '_serialize' для преобразования набора переменных представления в XML-ответ. Это очень упрощает создание простых XML-ответов. Вы также можете опустить параметр '_serialize' и использовать обычное представление + макет.

Параметры

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

Возвращает

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

Исключения

CakeException
Если возникла ошибка в представлении.

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

View::render()

Методы, унаследованные от Представление

__get()source public

__get( string $name )

Магический доступ к помощникам. Обеспечивает доступ к атрибутам, которые были устаревшими.

Параметры

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

Возвращает

смешанный

__isset()source public

__isset( string $name )

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

Параметры

строка $name
Имя атрибута для проверки.

Возвращает

булево

__set()source public

__set( string $name , mixed $value )

Магический доступ к устаревшим атрибутам.

Параметры

строка $name
Имя атрибута для установки.
смешанный $value
Значение атрибута для установки.

Возвращает

смешанный

_elementCache()source protected

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

Проверяет, кэширован ли элемент, и возвращает кэшированные данные, если они есть

Параметры

строка $name
Имя элемента
строка $data
Данные
массив $options
Параметры элемента

Возвращает

строка|null

_evaluate()source protected

_evaluate( string $viewFile , array $dataForView )

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

Параметры

строка $viewFile
Имя файла представления
массив $dataForView

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

Возвращает

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

_getElementFileName()source protected

_getElementFileName( string $name )

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

Параметры

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

Возвращает

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

_getExtensions()source protected

_getExtensions( )

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

Возвращает

массив
Массив расширений, используемых файлами представлений.

_getLayoutFileName()source protected

_getLayoutFileName( string $name null )

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

Параметры

строка $name необязательный null
Имя макета для поиска.

Возвращает

строка
Имя файла макета (.ctp).

Исключения

MissingLayoutException
при невозможности найти макет

_getViewFileName()source protected

_getViewFileName( string $name null )

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

Параметры

строка $name необязательно null
Действие контроллера для поиска имени файла шаблона

Возвращает

строка
Имя файла шаблона

Исключения

MissingViewException
если файл шаблона не был найден.

_paths()source protected

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

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

Параметры

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

Возвращает

массив
Пути

_render()source protected

_render( string $viewFile , array $data array() )

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

Параметры

строка $viewFile
Имя файла шаблона
массив $data необязательно array()
Данные для включения в отрисованный шаблон. Если пусто, будут использоваться текущие View::$viewVars.

Возвращает

строка
Выходной вывод

Исключения

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

Вызывает

View.beforeRenderFile $this, array($viewFile)
View.afterRenderFile $this, array($viewFile, $content)

_renderElement()source protected

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

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

Параметры

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

Возвращает

строка

Вызывает

View.beforeRender $this, array($file)
View.afterRender $this, array($file, $element)

addScript()source public

addScript( string $name , string $content null )

Добавляет блок скрипта или другой элемент, который будет вставлен в $scripts_for_layout в <head /> макета документа.

Устарело

3.0.0 Будет удалено в 3.0. Заменено функциональностью блоков.

Параметры

строка $name

Имя ключа для скрипта или содержимое скрипта. Имя может быть использовано для обновления/замены элемента скрипта.

строка $content необязательно null
Содержимое добавляемого скрипта, необязательно.

См. также

View::start()

append()source public

append( string $name , mixed $value null )

Добавляет содержимое в существующий или новый блок. Добавление в новый блок создаст этот блок.

Параметры

строка $name
Имя блока
смешанное $value необязательно null
Содержимое блока.

См. также

ViewBlock::concat()

assign()source public

assign( string $name , mixed $value )

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

Параметры

строка $name
Имя блока
смешанное $value
Содержимое блока.

См. также

ViewBlock::set()

blocks()source public

blocks( )

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

Возвращает

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

См. также

ViewBlock::keys()

element()source public

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

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

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

Параметры

строка $name

Имя файла шаблона в папке /app/View/Elements/ или MyPlugin.template для использования шаблона элемента из MyPlugin. Если элемент не найден в плагине, будет использован каскадный поиск пути к шаблонам.

массив $data необязательно array()
Массив данных, доступных для отрисовываемого шаблона (т.е. элемента)
массив $options необязательно array()

Массив параметров. Возможные ключи: - cache - Может быть true, чтобы включить кэширование с использованием конфигурации в View::$elementCache. Или массив. Если массив, можно использовать следующие ключи: - config - Используется для хранения кэшированного элемента в пользовательской конфигурации кэша. - key - Используется для определения ключа, используемого в Cache::write(). Будет префикс element_ - plugin - (устарело!) Загрузить элемент из определенного плагина. Этот параметр устарел и будет удален в CakePHP 3.0. Используйте Plugin.element_name вместо этого. - callbacks - Установите в значение true, чтобы вызвать обработчики helper beforeRender и afterRender для этого элемента. По умолчанию false. - ignoreMissing - Используется для обработки отсутствующих элементов. Установите в значение true, чтобы не генерировать сообщения об ошибках.

Возвращает

строка
Отображенный элемент

elementExists()source public

elementExists( string $name )

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

Параметры

строка $name

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

Возвращает

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

end()source public

end( )

Завершить блок захвата. Соответствует View::start()

См. также

ViewBlock::end()

exists()source public

exists( string $name )

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

Параметры

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

Возвращает

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

extend()source public

extend( string $name )

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

Параметры

строка $name
Шаблон или элемент для расширения текущего.

Исключения

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

fetch()source public

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

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

Параметры

строка $name
Имя блока
строка $default необязательно ''
Текстовое значение по умолчанию

Возвращает

строка
Содержимое блока или $default, если блок не существует.

См. также

ViewBlock::get()
END_OF_DOCUMENT_MARKER

get()source public

get( string $var , mixed $default null )

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

Параметры

строка $var
Переменная представления, содержимое которой нужно получить.
смешанный $default необязательно null
Значение по умолчанию/резервное значение для $var.

Возвращает

смешанный
Содержимое заданной переменной, если она определена, иначе $default.

getCurrentType()source public

getCurrentType( )

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

Возвращает

строка

getEventManager()source public

getEventManager( )

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

Возвращает

CakeEventManager

getVar()source public

getVar( string $var )

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

Устарело

3.0.0 Будет удалено в версии 3.0. Используйте View::get() вместо этого.

Параметры

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

Возвращает

смешанный
Содержимое заданной переменной, если она определена, иначе null.

getVars()source public

getVars( )

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

Возвращает

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

loadHelper()source public

loadHelper( string $helperName , array $settings array() )

Загружает хелпер. Делегирует загрузку хелпера в HelperCollection::load()

Параметры

строка $helperName
Имя хелпера для загрузки.
массив $settings необязательно массив()
Настройки для хелпера

Возвращает

Helper
объект построенного хелпера.

См. также

HelperCollection::load()

pluginSplit()source public

pluginSplit( string $name , boolean $fallback true )

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

Параметры

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

Возвращает

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

prepend()source public

prepend( string $name , mixed $value null )

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

Параметры

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

См. также

ViewBlock::concat()

renderCache()source public

renderCache( string $filename , string $timeStart )

Отобразить кэшированное представление. Работает совместно с CacheHelper и Dispatcher для отображения кэшированных файлов представления.

Параметры

строка $filename
файл кэша для включения
строка $timeStart
время начала рендеринга страницы

Возвращает

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

renderLayout()source public

renderLayout( string $content , string $layout null )

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

  • title_for_layout - Заглушка обратной совместимости, вы должны задать это значение, если хотите иметь больше контроля.
  • content_for_layout - содержит отрендеренный файл представления
  • scripts_for_layout - Содержит контент, добавленный с помощью addScript(), а также любой контент в блоках «meta», «css» и «script». Они добавляются в указанном порядке.

Устаревшие функции:

  • $scripts_for_layout устарела и будет удалена в CakePHP 3.0. Используйте вместо неё функции блоков. meta, css и script будут заполнены соответствующими методами HtmlHelper.
  • $title_for_layout устарела и будет удалена в CakePHP 3.0. Используйте вместо неё блок title.
  • $content_for_layout устарела и будет удалена в CakePHP 3.0. Используйте вместо неё блок content.

Параметры

строка $content
Содержимое для рендеринга в представлении, заключенное в окружающий макет.
строка $layout необязательно null
Имя макета

Возвращает

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

Выбрасывает

CakeException
если в представлении произошла ошибка.

Вызывает

View.beforeLayout $this, array($layoutFileName)
View.afterLayout $this, array($layoutFileName)

set()source public

set( string|array $one , string|array $two null )

Позволяет шаблону или элементу установить переменную, которая будет доступна в макете или другом элементе. Аналогично Controller::set().

Параметры

строка/массив $one
Строка или массив данных.
строка/массив $two необязательно null

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

start()source public

start( string $name )

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

Параметры

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

См. также

ViewBlock::start()

startIfEmpty()source public

startIfEmpty( string $name )

Начать захват вывода для блока, если он пустой

Параметры

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

См. также

ViewBlock::startIfEmpty()

uuid()source public

uuid( string $object , string $url )

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

Параметры

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

Возвращает

строка

Методы, унаследованные от CakeObject

_mergeVars()source protected

_mergeVars( array $properties , string $class , boolean $normalize true )

Объединяет $property этого объекта со свойством в определении $class. Значение свойства этого класса будет объединено поверх $class'a

Это обеспечивает некоторую DRY-магию, предоставляемую CakePHP. Если вы хотите её отключить, переопределите этот метод как пустую функцию.

Параметры

массив $properties
Имя свойств для объединения.
строка $class
Класс для объединения свойства с ним.
булево $normalize необязательно true
Установите значение в true, чтобы выполнить свойства через Hash::normalize() перед объединением.
END_OF_DOCUMENT_MARKER

_set()source protected

_set( array $properties array() )

Позволяет установить несколько свойств объекта в одной строке кода. Будут установлены только свойства, которые являются частью объявления класса.

Параметры

массив $properties необязательно массив()
Ассоциативный массив, содержащий свойства и соответствующие значения.

_stop()source protected

_stop( integer|string $status 0 )

Останавливает выполнение текущего сценария. Оборачивает exit(), что облегчает тестирование.

Параметры

целое число|строка $status необязательно 0
см. http://php.net/exit для значений

dispatchMethod()source public

dispatchMethod( string $method , array $params array() )

Вызывает метод этого объекта с заданными параметрами. Предоставляет ОО-обёртку для call_user_func_array

Параметры

строка $method
Имя вызываемого метода
массив $params необязательно массив()
Список параметров для использования при вызове $method

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

mixed
Результат вызова метода

log()source public

log( string $msg , integer $type LOG_ERR , null|string|array $scope null )

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

Параметры

строка $msg
Сообщение для журнала
целое число $type необязательно LOG_ERR
Константа типа ошибки. Определена в app/Config/core.php.
null|строка|массив $scope необязательно null

Область(и), в которой создаётся сообщение для журнала. Для получения дополнительной информации о областях ведения журналов, см. CakeLog::config().

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

boolean
Успешность записи в журнал

requestAction()source public

requestAction( string|array $url , array $extra array() )

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

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

Передача данных POST и GET

Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.

Параметры

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

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

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

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

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

mixed

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


toString()source public

toString( )

Преобразование CakeObject в строку. Каждый класс может переопределить этот метод по необходимости.

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

строка
Имя этого класса

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

$subDirsource

public строка

Подкаталог. XML-представления всегда находятся в xml.

'xml'

© 2005–2016 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/2.9/class-XmlView.html

Spec-Zone.ru

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