Spec-Zone.ru › CakePHP 2.10

Класс 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 View
Extended by XmlView
Пакет: Cake\View
С момента: CakePHP(tm) v 2.1.0
Авторские права: Copyright (c) Cake Software Foundation, Inc. (https://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, viewPath, 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()

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

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

Отображает элемент и вызывает события before и 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( )

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

Возвращает

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

См. также

ViewBlock::keys()

element()source public

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

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

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

Параметры

string $name

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

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

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

Возвращает

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

elementExists()source public

elementExists( string $name )

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

Параметры

string $name

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

Возвращает

boolean
Успех

end()source public

end( )

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

См. также

ViewBlock::end()

exists()source public

exists( string $name )

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

Параметры

string $name
Имя блока

Возвращает

boolean

extend()source public

extend( string $name )

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

Параметры

string $name
Представление или элемент, с которым необходимо «расширить» текущее.

Исключение

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

fetch()source public

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

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

Параметры

string $name
Имя блока
string $default optional ''
Значение по умолчанию

Возвращает

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

См. также

ViewBlock::get()
END_OF_DOCUMENT_MARKER

get()source public

get( string $var , mixed $default null )

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

Параметры

строка $var
Переменная представления, содержимое которой нужно получить.
смешанный $default необязательно null
Значение по умолчанию/fallback для переменной $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 )

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

Параметры

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

Возвращает

строка

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

_mergeVars()source protected

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

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

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

Параметры

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

_set()source protected

_set( array $properties array() )

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

Параметры

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

_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 необязательно array()
Список параметров для использования при вызове $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 необязательно array()

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

Возвращает

mixed

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


toString()source public

toString( )

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

Возвращает

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

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

$subDirsource

public строка

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

'xml'

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

Spec-Zone.ru

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