Spec-Zone.ru › CakePHP 2.8

Класс MediaView

MediaView предоставляет реализацию пользовательского представления для отправки файлов посетителям. Он отлично подходит для того, чтобы сделать ответ действия контроллера файлом, сохраненным где-то в файловой системе.

Пример использования можно найти во внутренних компонентах CakePHP. MediaView используется для предоставления ресурсов плагинов и тем, поскольку они обычно недоступны из веб-корня приложения. В отличие от других представлений, MediaView использует несколько viewVars со специальным значением:

  • id Имя файла в файловой системе сервера, включая расширение.
  • name Имя файла, которое будет отправлено пользователю, указанное без расширения.
  • download Устанавливается в значение true для установки заголовка Content-Disposition. Это идеально подходит для загрузки файлов.
  • path Абсолютный путь, включая конечный / в файловой системе сервера, для id.
  • mimeType Тип MIME файла, если CakeResponse не знает его. Должен быть ассоциативным массивом, где расширение является ключом, а тип MIME — значением, например: array('ini' => 'text/plain')

Использование

class ExampleController extends AppController {
    public function download() {
        $this->viewClass = 'Media';
        $params = array(
            'id' => 'example.zip',
            'name' => 'example',
            'download' => true,
            'extension' => 'zip',
            'path' => APP . 'files' . DS
        );
        $this->set($params);
    }
}
Объект
Extended by Представление
Extended by MediaView
Пакет: Cake\Представление
Устаревшее: 3.0.0 Устарело начиная с версии 2.3, используйте CakeResponse::file() вместо этого
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/View/MediaView.php

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

  • TYPE_ELEMENT, TYPE_LAYOUT, TYPE_VIEW

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

  • 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, subDir, theme, uuids, validationErrors, view, viewPath, viewVars

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

  • render() public
    Отображение или загрузка указанного файла

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

render()исходный код public

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

Отображение или загрузка указанного файла

Параметры

строка $view необязательно null
Не используется
строка $layout необязательно null
Не используется

Исключения

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

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

View::render()

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

__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
Параметры элемента

Возвращает

строка|null

_evaluate()исходный код protected

_evaluate( string $viewFile , array $dataForView )

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

Параметры

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

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

Возвращает

строка
Результат отображения

_getElementFileName()исходный код protected

_getElementFileName( string $name )

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

Параметры

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

Возвращает

смешанный
Строка имени файла элемента или false при невозможности его найти.

_getExtensions()исходный код protected

_getExtensions( )

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

Возвращает

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

_getLayoutFileName()исходный код protected

_getLayoutFileName( string $name null )

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

Параметры

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

Возвращает

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

Исключения

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

_getViewFileName()исходный код protected

_getViewFileName( string $name null )

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

Параметры

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

Возвращает

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

Исключения

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

_paths()исходный код 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 необязательно массив()
Данные для включения в рендеренное представление. Если пусто, будут использоваться текущие 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 /> макете документа.

Параметры

строка $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 необязательно массив()
Массив данных, которые будут доступны рендеренному представлению (т.е. элементу).
массив $options необязательно массив()

Массив опций. Возможные ключи: - 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
Имя блока

Возвращает

boolean

extend()source public

extend( string $name )

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

Параметры

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

Исключения

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

fetch()source public

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

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

Параметры

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

Возвращает

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

См. также

ViewBlock::get()

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 )

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

Параметры

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

Возвращает

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

getVars()source public

getVars( )

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

Возвращает

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

loadHelper()source public

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

Загружает помощник. Делегирует загрузку помощника HelperCollection::load()

Параметры

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

Возвращает

Helper
объект помощника.

См. также

HelperCollection::load()

loadHelpers()source public

loadHelpers( )

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

pluginSplit()source public

pluginSplit( string $name , boolean $fallback true )

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

Параметры

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

Возвращает

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

prepend()source public

prepend( string $name , mixed $value null )

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

Параметры

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

См. также

ViewBlock::concat()

renderCache()source public

renderCache( string $filename , string $timeStart )

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

Параметры

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

Возвращает

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

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.

Параметры

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

Возвращает

mixed
Отрендеренный вывод или 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().

Параметры

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

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

start()source public

start( string $name )

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

Параметры

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

См. также

ViewBlock::start()

startIfEmpty()source public

startIfEmpty( string $name )

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

Параметры

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

См. также

ViewBlock::startIfEmpty()

uuid()source public

uuid( string $object , string $url )

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

Параметры

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

Возвращает

string

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

_mergeVars()source protected

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

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

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

Параметры

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

_set()source protected

_set( array $properties array() )

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

Параметры

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

_stop()source protected

_stop( integer|string $status 0 )

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

Параметры

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

dispatchMethod()source public

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

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

Параметры

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

Возвращает

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

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 при успехе/неудаче, или содержимое рендеренного действия, если в $extra установлен ключ 'return'.


toString()source public

toString( )

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

Возвращает

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

© 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-MediaView.html

Spec-Zone.ru

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