Spec-Zone.ru › CakePHP 2.7

Класс Представление

Представление, V в триаде MVC. Представление взаимодействует с Помощниками и переменными представления, переданными из контроллера, чтобы отобразить результаты действия контроллера. Часто это HTML, но также может быть в формате JSON, XML, PDF или потоковые файлы.

CakePHP использует двухэталонную модель представления. Это означает, что содержимое представления отображается сначала, а затем вставляется в выбранный макет. Это также означает, что вы можете передавать данные из представления в макет, используя $this->set()

С версии 2.1 базовый класс представления также включает поддержку тем по умолчанию. Представления тем — это обычные файлы представлений, которые могут предоставлять уникальные HTML и статические ресурсы. Если представления тем не найдены для текущего представления, будут использованы файлы представления приложения по умолчанию. Вы можете установить $this->theme = 'mytheme' в своём Контроллере, чтобы использовать темы.

Пример пути темы с $this->theme = 'SuperHot'; был бы app/View/Themed/SuperHot/Posts

Объект
Extended by Представление

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

JsonView, MediaView, ScaffoldView, ThemeView, XmlView
Пакет: Cake\Представление
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение Cake/View/View.php

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

__constructисточник public

__construct( Controller $controller null )

Конструктор

Параметры

Controller $controller необязательно null
Объект контроллера для извлечения View::_passedVars.

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

Object::__construct()

__getисточник public

__get( string $name )

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

Параметры

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

Возвращает

mixed
смешанный тип

__issetисточник public

__isset( string $name )

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

Параметры

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

Возвращает

boolean
булево значение

__setисточник public

__set( string $name , mixed $value )

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

Параметры

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

Возвращает

mixed
смешанный тип

_elementCacheисточник protected

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

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

Параметры

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

Возвращает

string|null
строка или null

_evaluateисточник protected

_evaluate( string $viewFile , array $dataForView )

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

Параметры

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

Возвращает

string
Результат рендеринга

_getElementFileNameисточник protected

_getElementFileName( string $name )

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

Параметры

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

Возвращает

mixed
Строка имени файла элемента или false, если не найдено.

_getExtensionsисточник protected

_getExtensions( )

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

Возвращает

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

_getLayoutFileNameисточник protected

_getLayoutFileName( string $name null )

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

Параметры

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

Возвращает

string
Имя файла макета (.ctp).

Исключения

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

_getViewFileNameисточник protected

_getViewFileName( string $name null )

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

Параметры

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

Возвращает

string
Имя файла шаблона

Исключения

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

_pathsисточник protected

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

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

Параметры

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

Возвращает

array
пути

_renderисточник protected

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

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

Параметры

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

Возвращает

string
Результат рендеринга

Исключения

CakeException
при оставленном открытым блоке

Триггеры

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

_renderElementисточник protected

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

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

Параметры

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

Возвращает

string
строка

Триггеры

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

addScriptисточник public

addScript( string $name , string $content null )

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

Устарело

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

Параметры

строка $name
Имя ключа скрипта или содержимое скрипта. Имя может быть использовано для обновления/замены элемента скрипта.
строка $content необязательно null
Содержимое добавляемого скрипта, необязательно.

См. также

View::start()

appendsource public

append( string $name , mixed $value null )

Добавить в существующий или новый блок. Добавление в новый блок создаст блок.

Параметры

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

См. также

ViewBlock::concat()

assignsource public

assign( string $name , mixed $value )

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

Параметры

string $name
Имя блока
mixed $value
Содержимое блока.

См. также

ViewBlock::set()

blockssource public

blocks( )

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

Возвращает

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

См. также

ViewBlock::keys()

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

Возвращает

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

elementExistssource public

elementExists( string $name )

Проверяет наличие элемента

Параметры

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

Возвращает

boolean
Результат проверки

endsource public

end( )

Завершить блок захвата. Комплементарное действие к View::start()

См. также

ViewBlock::end()

existssource public

exists( string $name )

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

Параметры

string $name
Имя блока

Возвращает

boolean
true/false

extendsource public

extend( string $name )

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

Параметры

string $name
Представление или элемент для 'расширения' текущего.

Выбрасывает

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

fetchsource public

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

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

Параметры

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

Возвращает

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

См. также

ViewBlock::get()

getsource public

get( string $var , mixed $default null )

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

Параметры

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

Возвращает

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

getCurrentTypesource public

getCurrentType( )

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

Возвращает

string
строка

getEventManagersource public

getEventManager( )

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

Возвращает

CakeEventManager
CakeEventManager

getVarsource public

getVar( string $var )

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

Устарело

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

Параметры

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

Возвращает

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

getVarssource public

getVars( )

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

Возвращает

array
Массив имён заданных переменных представления.

loadHelpersource public

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

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

Параметры

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

Возвращает

Helper
Объект загруженного helper.

См. также

HelperCollection::load()

loadHelperssource public

loadHelpers( )

Взаимодействие с HelperCollection для загрузки всех helpers.

pluginSplitsource public

pluginSplit( string $name , boolean $fallback true )

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

Параметры

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

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

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

prependsource public

prepend( string $name , mixed $value null )

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

Параметры

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

См. также

ViewBlock::concat()

rendersource public

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

Отображает представление для заданного файла представления и макета.

Отображение вызывает обратные вызовы помощников, которые вызываются до и после отображения представления, а также до и после макета. Обратные вызовы помощников вызываются:

  • beforeRender
  • afterRender
  • beforeLayout
  • afterLayout

Если View::$autoRender равен false и не указано $layout, представление будет возвращено без обработки.

Имена представлений и макетов могут ссылаться на представления/макеты плагинов. Используя синтаксис Plugin.view, можно использовать представление/макет плагина вместо приложения. Если выбранный плагин не найден, представление будет найдено в стандартном пути к представлениям.

Параметры

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

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

string|null
Отображенное содержимое или null, если содержимое уже было отображено и возвращено ранее.

Исключения

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

Вызывает

View.beforeRender $this, массив($viewFileName)
View.afterRender $this, массив($viewFileName)

renderCachesource public

renderCache( string $filename , string $timeStart )

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

Параметры

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

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

boolean
Успешность рендеринга кэшированного файла.

renderLayoutsource 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
Имя макета

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

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

Исключения

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

Вызывает

View.beforeLayout $this, массив($layoutFileName)
View.afterLayout $this, массив($layoutFileName)

setsource public

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

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

Параметры

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

startsource public

start( string $name )

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

Параметры

строка $name
Имя блока, для которого нужно захватить вывод.

См. также

ViewBlock::start()

startIfEmptysource public

startIfEmpty( string $name )

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

Параметры

строка $name
Имя блока, для которого нужно захватить вывод.

См. также

ViewBlock::startIfEmpty()

uuidsource public

uuid( string $object , string $url )

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

Параметры

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

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

string
строка

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

_mergeVarssource protected

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

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

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

Параметры

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

_setsource protected

_set( array $properties array() )

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

Параметры

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

_stopsource protected

_stop( integer|string $status 0 )

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

Параметры

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

dispatchMethodsource public

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

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

Параметры

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

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

mixed
Возвращает результат вызова метода
END_OF_DOCUMENT_MARKER

logsource public

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

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

Параметры

string $msg
Сообщение для лога
integer $type optional LOG_ERR
Константа типа ошибки. Определена в app/Config/core.php.
null|string|array $scope optional null
Область(и), в которой создаётся сообщение лога. Для получения более подробной информации о пространствах имен логов, обратитесь к CakeLog::config().

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

boolean
Результат записи в лог

requestActionsource 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.

Параметры

string|array $url
Строковый или массивно-ориентированный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
array $extra optional array()
Если массив включает ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.

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

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

toStringsource public

toString( )

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

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

string
Название этого класса

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

string TYPE_ELEMENT

Константа для типа файла представления 'element'

'element'
string TYPE_LAYOUT

Константа для типа файла представления 'layout'

'layout'
string TYPE_VIEW

Константа для типа файла представления 'view'

'view'

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

$Blockssource

public ViewBlock

Экземпляр ViewBlock.

$Helperssource

public HelperCollection

Коллекция помощников

$_currentsource

protected string

Текущий обрабатываемый файл представления. Используется для разрешения родительских файлов.

null

$_currentTypesource

protected string

В данный момент выполняется рендеринг элемента. Используется для поиска родительских фрагментов для элементов.

''

$_eventManagersource

protected CakeEventManager

Экземпляр CakeEventManager, который использует этот объект View для отправки внутренних событий. Обычно менеджер совместно используется с контроллером, поэтому можно регистрировать события представления в слое контроллера.

null

$_eventManagerConfiguredsource

protected boolean

Была ли уже настроена система обработки событий для этого объекта

false

$_parentssource

protected array

Имена представлений и их родителей, используемые с View::extend();

array()

$_passedVarssource

protected array

Список переменных для сбора из связанного контроллера.

array(
    'viewVars', 'autoLayout', 'ext', 'helpers', 'view', 'layout', 'name', 'theme',
    'layoutPath', 'viewPath', 'request', 'plugin', 'passedArgs', 'cacheAction'
)

$_pathssource

protected array

Содержит массив путей.

array()

$_pathsForPluginsource

protected array

Содержит массив путей плагинов.

array()

$_scriptssource

protected array

Скрипты (и/или другие теги <head />) для макета.

array()

$_stacksource

protected array

Стек содержимого, используемый для вложенных шаблонов, которые все используют View::extend();

array()

$autoLayoutsource

public boolean

Включает или выключает обычный режим CakePHP применения файлов макетов. Включен по умолчанию. Установка в off означает, что макеты не будут автоматически применяться к отображаемым представлениям.

true

$cacheActionsource

public mixed

Используется для определения методов контроллера, которые будут кэшироваться.

See

Controller::$cacheAction
false

$elementCachesource

public string

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

See

View::element()
'default'

$elementCacheSettingssource

public array

Настройки кэша элементов

See

View::_elementCache();
View::_renderElement()
array()

$extsource

public string

Расширение файла. По умолчанию используется расширение шаблона CakePHP ".ctp".

'.ctp'

$hasRenderedsource

public boolean

Истина, когда представление было обработано.

false

$helperssource

public mixed

Массив имен встроенных помощников для включения.

array()

$layoutsource

public string

Имя макета для использования с этим представлением.

'default'

$layoutPathsource

public string

Путь к макету.

null

$namesource

public string

Имя контроллера.

null

$passedArgssource

public mixed

Текущие переданные параметры

array()

$pluginsource

public string

Имя плагина.

Link

http://manual.cakephp.org/chapter/plugins
null

$requestsource

public CakeRequest

Экземпляр объекта CakeRequest, который содержит информацию о текущем запросе. Этот объект содержит всю информацию о запросе и несколько методов для чтения дополнительной информации о запросе.

$responsesource

public CakeResponse

Ссылка на объект Response

$subDirsource

public string

Подкаталог для данного файла представления. Часто используется для маршрутизации на основе расширений. Например, с расширением xml, $subDir будет xml/

null

$themesource

public string

Имя темы.

null

$uuidssource

public array

Список сгенерированных UUID DOM.

array()

$validationErrorssource

public array

Содержит текущие ошибки для проверки модели.

array()

$viewsource

public string

Имя представления для использования с этим View.

null

$viewPathsource

public string

Путь к представлению.

null

$viewVarssource

public array

Переменные для представления

array()

Краткое описание магических свойств

$Blockssource

public ViewBlock

$Cachesource

public CacheHelper

$Formsource

public FormHelper

$Htmlsource

public HtmlHelper

$Jssource

public JsHelper

$Numbersource

public NumberHelper

$Paginatorsource

public PaginatorHelper

$Rsssource

public RssHelper

$Sessionsource

public SessionHelper

$Textsource

public TextHelper

$Timesource

public TimeHelper

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

Spec-Zone.ru

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