Spec-Zone.ru › CakePHP 2.10

Класс 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);
    }
}
CakeObject
Extended by View
Extended by MediaView
Пакет: Cake\View
Устаревший: 3.0.0 Устаревший с версии 2.3, используйте CakeResponse::file() вместо этого
Авторские права: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: MIT License
Расположение: 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()source public

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

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

Параметры

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

Исключения

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

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

View::render()

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

__construct()source public

__construct( Controller $controller null )

Конструктор

Параметры

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

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

CakeObject::__construct()

__get()source public

__get( string $name )

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

Параметры

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

Возвращает

mixed

__isset()source public

__isset( string $name )

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

Параметры

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

Возвращает

boolean

__set()source public

__set( string $name , mixed $value )

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

Параметры

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

Возвращает

mixed

_elementCache()source protected

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

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

Параметры

string $name
Имя элемента
string $data
Данные
array $options
Опции элемента

Возвращает

string|null

_evaluate()source protected

_evaluate( string $viewFile , array $dataForView )

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

Параметры

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

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

Возвращает

string
Результат отрисовки

_getElementFileName()source protected

_getElementFileName( string $name )

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

Параметры

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

Возвращает

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

_getExtensions()source protected

_getExtensions( )

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

Возвращает

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

_getLayoutFileName()source protected

_getLayoutFileName( string $name null )

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

Параметры

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

Возвращает

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

Исключения

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

_getViewFileName()source protected

_getViewFileName( string $name null )

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

Параметры

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

Возвращает

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

Исключения

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

_paths()source protected

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

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

Параметры

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

Возвращает

array
пути
END_OF_DOCUMENT_MARKER ```

_render()source protected

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

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

Параметры

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

Возвращает

строка
Отформатированный вывод

Исключения

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

Вызывает

View.beforeRenderFile $this, массив($viewFile)
View.afterRenderFile $this, массив($viewFile, $content)

_renderElement()source protected

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

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

Параметры

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

Возвращает

строка

Вызывает

View.beforeRender $this, массив($file)
View.afterRender $this, массив($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 для вызова обратных вызовов 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 )

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

Параметры

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 необязательно ''
Текст по умолчанию

Возвращает

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

См. также

ViewBlock::get()

get()source public

get( string $var , mixed $default null )

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

Параметры

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

Возвращает

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

getCurrentType()source public

getCurrentType( )

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

Возвращает

string

getEventManager()source public

getEventManager( )

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

Возвращает

CakeEventManager

getVar()source public

getVar( string $var )

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

Параметры

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

Возвращает

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

getVars()source public

getVars( )

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

Возвращает

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

loadHelper()source public

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

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

Параметры

string $helperName
Имя помощника для загрузки.
array $settings optional 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 optional true
Если true, использует плагин, установленный в текущем CakeRequest, когда загруженный плагин не найден

Возвращает

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

prepend()source public

prepend( string $name , mixed $value null )

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

Параметры

string $name
Имя блока
mixed $value optional 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 optional 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 optional 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

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

_mergeVars()source protected

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

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

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

Параметры

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

_set()source protected

_set( array $properties array() )

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

Параметры

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

_stop()source protected

_stop( integer|string $status 0 )

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

Параметры

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

dispatchMethod()source public

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

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

Параметры

string $method
Имя метода для вызова
array $params optional 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 необязательно array()

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

Возвращает

смешанное значение

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


toString()source public

toString( )

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

Возвращает

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

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

Spec-Zone.ru

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