Spec-Zone.ru › CakePHP 2.8

Класс 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, вам потребуется представление. Вы можете использовать расширенные представления для обеспечения функциональности макета.

Объект
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, 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() таким образом, например, 'формат' как 'атрибуты' вместо 'тегов'.

Параметры

массив $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
при невозможности найти макет
END_OF_DOCUMENT_MARKER

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

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

Возвращает

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

См. также

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, чтобы вызвать обратные вызовы 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 необязательно array()
Настройки помощника

Возвращает

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 объекта

Возвращает

строка

Методы, унаследованные от Объект

_mergeVars()source protected

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

Объединяет $property этого объекта с $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( )

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

Возвращает

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

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

$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.
http://api.cakephp.org/2.8/class-XmlView.html

Spec-Zone.ru

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