Spec-Zone.ru › CakePHP 3.5

Класс JsonView

Класс представления, используемый для JSON-ответов.

Позволяет опустить шаблоны, если нужно только вывести строку JSON в качестве ответа.

В контроллере можно сделать следующее:

$this->set(['posts' => $posts]);
$this->set('_serialize', true);

При отрисовке представления переменная $posts будет сериализована в JSON.

Можно также задать несколько переменных представления для сериализации. Это создаст верхний объект, содержащий все именованные переменные представления:

$this->set(compact('posts', 'users', 'stuff'));
$this->set('_serialize', true);

Вышеприведённый код сгенерирует объект JSON, похожий на:

{"posts": [...], "users": [...]}

Также можно установить '_serialize' в строку или массив, чтобы сериализовать только указанные переменные представления.

Если не использовать _serialize, потребуется шаблон представления. Можно использовать расширенные представления для обеспечения функциональности, подобной макетам.

Также можно включить поддержку JSONP, задав параметр _jsonp в значение true или строку, чтобы указать имя пользовательского параметра строки запроса, который будет содержать имя функции обратного вызова.

Cake\View\View implements Cake\Event\EventDispatcherInterface uses Cake\View\CellTrait , Cake\Event\EventDispatcherTrait , Cake\Log\LogTrait , Cake\Routing\RequestActionTrait , Cake\View\ViewVarsTrait
Extended by Cake\View\SerializedView
Extended by Cake\View\JsonView
Пространство имён: Cake\View
Расположение: View/JsonView.php

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

  • NAME_ELEMENT, NAME_TEMPLATE, TYPE_ELEMENT, TYPE_LAYOUT, TYPE_TEMPLATE, TYPE_VIEW

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

  • $_responseType protected
    string
    Тип ответа.
  • $_specialVars protected
    array
    Список специальных переменных представления.
  • $layoutPath public
    string
    JSON-макеты находятся в подкаталоге json каталога Layouts/
  • $subDir public
    string
    JSON-представления находятся в подкаталоге 'json' представлений контроллеров.

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

  • Blocks, Flash, Form, Html, Number, Paginator, Rss, Session, Text, Time, Url, view, viewPath _validViewOptions

Наследованные свойства

  • Blocks, _current, _currentType, _ext, _helpers, _parents, _passedVars, _paths, _pathsForPlugin, _stack, _viewBlockClass, autoLayout, elementCache, hasRendered, helpers, layout, name, passedArgs, plugin, request, response, template, templatePath, theme, uuids _eventClass, _eventManager _viewBuilder, viewClass, viewVars

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

  • _dataToSerialize() protected
    Возвращает данные для сериализации.
  • _serialize() protected
    Сериализация переменных представления
  • render() public
    Отрисовка JSON-представления.

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

_dataToSerialize()source protected

_dataToSerialize( array|string|boolean $serialize true )

Возвращает данные для сериализации.

Параметры

массив|строка|булево $serialize необязательно true

Имя(а) переменной(ых) представления, которые нужно сериализовать. Если true, будут использованы все доступные переменные представления.

Возвращает

mixed
Данные для сериализации.

_serialize()source protected

_serialize( array|string|boolean $serialize )

Сериализация переменных представления

Специальные параметры

_jsonOptions Можно установить пользовательские параметры для json_encode() таким образом, например, JSON_HEX_TAG | JSON_HEX_APOS.

Параметры

массив|строка|булево $serialize

Имя(а) переменной(ых) представления, которые нужно сериализовать. Если true, будут использованы все доступные переменные представления.

Возвращает

строка|ложь
Сериализованные данные или false, если сериализация невозможна.

render()source public

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

Отрисовка JSON-представления.

Специальные параметры

_serialize Чтобы преобразовать набор переменных представления в JSON-ответ. Его значение может быть строкой для имени одной переменной или массивом для нескольких имён. Если true, будут сериализованы все переменные представления. Отрисовка обычного шаблона представления будет отменена. _jsonp Включает поддержку JSONP и оборачивает ответ в функцию обратного вызова, указанную в строке запроса. - Установка значения true включает параметр строки запроса "callback" по умолчанию. - Установка значения строки использует предоставленный параметр строки запроса для поиска имени JSONP-обратного вызова.

Параметры

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

Возвращает

строка|null
Отрисованное представление.

Выбрасывает

Cake\Core\Exception\Exception
Если возникла ошибка в представлении.

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

Cake\View\SerializedView::render()

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

__construct()source public

__construct( Cake\Http\ServerRequest $request null , Cake\Http\Response $response null , Cake\Event\EventManager $eventManager null , array $viewOptions [] )

Конструктор

Параметры

Cake\Http\ServerRequest $request необязательно null
Экземпляр запроса.
Cake\Http\Response $response необязательно null
Экземпляр ответа.
Cake\Event\EventManager $eventManager необязательно null
Экземпляр EventManager.
массив $viewOptions необязательно []
Массив параметров представления

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

Cake\View\View::__construct()

loadHelpers()source public

loadHelpers( )

Загрузка хелперов только если сериализация отключена.

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

Cake\View\View::loadHelpers()

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

__get()source public

__get( string $name )

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

Параметры

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

Возвращает

mixed

__set()source public

__set( string $name , mixed $value )

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

Параметры

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

_checkFilePath()source protected

_checkFilePath( string $file , string $path )

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

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

Параметры

строка $file
Путь к файлу шаблона.
строка $path
Базовый путь, в котором $file должен находиться.

Возвращает

строка
Путь к файлу

Выбрасывает

Исключение неверного аргумента
END_OF_DOCUMENT_MARKER

_elementCache()source protected

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

Генерирует параметры конфигурации кеша для элемента.

Параметры

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

Возвращает

массив
Конфигурация кеша элементов.

_evaluate()source protected

_evaluate( string $viewFile , array $dataForView )

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

Параметры

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

Возвращает

строка
Результат рендеринга

_getElementFileName()source protected

_getElementFileName( string $name , boolean $pluginCheck true )

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

Параметры

строка $name
Имя элемента для поиска.
логическое $pluginCheck необязательно true
  • если false, игнорирует плагин запроса, если плагин не загружен

Возвращает

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

_getLayoutFileName()source protected

_getLayoutFileName( string|null $name null )

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

Параметры

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

Возвращает

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

Выбрасывает

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

_getSubPaths()source protected

_getSubPaths( string $basePath )

Находит все пути к подшаблонам, основанные на $basePath. Если в текущем запросе определён префикс, этот метод добавит префиксный путь к шаблону в $basePath, вызывая переходы до тех пор, пока префикс не будет вложен. В основном используется для нахождения префиксных путей к шаблонам элементов и макетов.

Параметры

строка $basePath
Базовый путь, для которого нужно получить префиксный путь.

Возвращает

массив
Массив со всеми путями к шаблонам.

_getViewFileName()source protected

_getViewFileName( string|null $name null )

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

Параметры

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

Возвращает

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

Выбрасывает

Cake\View\Exception\MissingTemplateException
если файл представления не найден.

_inflectViewFileName()source protected

_inflectViewFileName( string $name )

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

Параметры

строка $name
Имя файла, которое должно быть преобразованно.

Возвращает

строка
Имя файла после преобразования

_paths()source protected

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

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

Параметры

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

Возвращает

массив
пути

_render()source protected

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

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

Параметры

строка $viewFile
Имя файла представления
массив $data необязательно []

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

Возвращает

строка
Результат рендеринга

Выбрасывает

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

Триггеры

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]

append()source public

append( string $name , mixed $value null )

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

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

Параметры

строка $name
Имя блока
смешанный $value необязательно null

Содержание блока. Значение будет преобразовано в строку.

Возвращает


$this

См. также

\Cake\View\ViewBlock::concat()

assign()source public

assign( string $name , mixed $value )

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

Параметры

строка $name
Имя блока
смешанный $value

Содержание блока. Значение будет преобразовано в строку.

Возвращает


$this

См. также

\Cake\View\ViewBlock::set()

autoLayout()source public

autoLayout( boolean|null $autoLayout null )

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

Устарело

3.5.0 Используйте isAutoLayoutEnabled()/enableAutoLayout() вместо этого.

Параметры

логическое|null $autoLayout необязательно null
Логическое значение для включения/выключения. Если null, возвращает текущее значение.

Возвращает

логическое|null

blocks()source public

blocks( )

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

Возвращает

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

См. также

\Cake\View\ViewBlock::keys()

cache()source public

cache( callable $block , array $options [] )

Создаёт кэшированный блок логики представления.

Это позволяет кэшировать блок вывода представления в кеш, определённый в elementCache.

Этот метод сначала попытается прочитать кеш. Если кеш пустой, $block будет выполнен, и результат будет сохранён.

Параметры

вызываемый $block
Блок кода, результат которого вы хотите кэшировать.
массив $options необязательно []
Параметры, определяющие ключ кеша и т. д.

Возвращает

строка
Отрисованное содержимое.

Выбрасывает

RuntimeException
Когда $options не содержит опции 'key'.
END_OF_DOCUMENT_MARKER

element()source public

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

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

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

Параметры

строка $name

Имя файла шаблона в папке /src/Template/Element/ или MyPlugin.template, чтобы использовать элемент шаблона из MyPlugin. Если элемент не найден в плагине, будет произведён поиск по стандартному пути к представлениям.

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

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

Возвращает

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

Исключение

Cake\View\Exception\MissingElementException

При отсутствии элемента и ignoreMissing равно false.


elementExists()source public

elementExists( string $name )

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

Параметры

строка $name

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

Возвращает

булево
Успех

enableAutoLayout()source public

enableAutoLayout( boolean $enable true )

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

Параметры

булево $enable необязательно true
Булево значение для включения/выключения.

Возвращает


$this

end()source public

end( )

Завершение блока захвата. Дополнение к View::start()

Возвращает


$this

См. также

\Cake\View\ViewBlock::end()

exists()source public

exists( string $name )

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

Параметры

строка $name
Имя блока

Возвращает

булево

extend()source public

extend( string $name )

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

Параметры

строка $name
Шаблон или элемент для расширения текущего.

Возвращает


$this

Исключения

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

fetch()source public

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

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

Параметры

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

Возвращает

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

См. также

\Cake\View\ViewBlock::get()

get()source public

get( string $var , mixed $default null )

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

Параметры

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

Возвращает

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

getCurrentType()source public

getCurrentType( )

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

Возвращает

строка

getLayout()source public

getLayout( )

Получение имени файла макета для рендеринга шаблона внутри него. Указанное имя — это имя файла макета в /src/Template/Layout без расширения .ctp.

Возвращает

строка

getLayoutPath()source public

getLayoutPath( )

Получение пути к файлам макета.

Возвращает

строка

getTemplate()source public

getTemplate( )

Получение имени файла шаблона для рендеринга. Указанное имя — это имя файла в /src/Template/ без расширения .ctp.

Возвращает

строка

getTemplatePath()source public

getTemplatePath( )

Получение пути к файлам шаблонов.

Возвращает

строка

getTheme()source public

getTheme( )

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

Возвращает

строка|null

getVars()source public

getVars( )

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

Возвращает

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

helpers()source public

helpers( )

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

Возвращает

Cake\View\HelperRegistry

initialize()source public

initialize( )

Метод инициализации.

Свойства, такие как $helpers и т. д., нельзя инициализировать статически в вашем пользовательском классе представления, так как они перезаписываются значениями из контроллера в конструкторе. Этот метод позволяет манипулировать ими по мере необходимости после построения экземпляра представления.

isAutoLayoutEnabled()source public

isAutoLayoutEnabled( )

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

Возвращает

булево
END_OF_DOCUMENT_MARKER

layout()source public

layout( string|null $name null )

Получить/установить имя файла шаблона макета для рендеринга шаблона внутри. Указанное имя — это имя файла макета в /src/Template/Layout без расширения .ctp.

Устаревший

3.5.0 Используйте getLayout()/setLayout() вместо этого.

Параметры

string|null $name необязательно null
Имя файла макета для установки. Если null, возвращает текущее имя.

Возвращает

string|null

layoutPath()source public

layoutPath( string|null $path null )

Получить/установить путь к файлам макета.

Устаревший

3.5.0 Используйте getLayoutPath()/setLayoutPath() вместо этого.

Параметры

string|null $path необязательно null
Путь к файлам макета. Если null, возвращает текущий путь.

Возвращает

string|null

loadHelper()source public

loadHelper( string $name , array $config [] )

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

Параметры

string $name
Имя помощника для загрузки.
array $config необязательно []
Настройки для помощника

Возвращает

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

См. также

\Cake\View\HelperRegistry::load()

pluginSplit()source public

pluginSplit( string $name , boolean $fallback true )

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

Параметры

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

Возвращает

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

prepend()source public

prepend( string $name , mixed $value )

Добавить в начало существующего или нового блока.

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

Параметры

string $name
Имя блока
mixed $value

Содержание блока. Значение будет приведено к типу string.

Возвращает


$this

См. также

\Cake\View\ViewBlock::concat()

renderLayout()source public

renderLayout( string $content , string|null $layout null )

Отображает макет. Возвращает вывод из _render(). Возвращает false при ошибке. Несколько переменных создаются для использования в макете.

Параметры

string $content
Содержимое для рендеринга в шаблоне, обернутое окружающим макетом.
string|null $layout необязательно null
Имя макета

Возвращает

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

Исключения

Cake\Core\Exception\Exception
если есть ошибка в представлении.

Триггеры

View.beforeLayout $this, [$layoutFileName]
View.afterLayout $this, [$layoutFileName]

reset()source public

reset( string $name )

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

Параметры

string $name
Имя блока

Возвращает


$this

См. также

\Cake\View\ViewBlock::set()

setLayout()source public

setLayout( string $name )

Установить имя файла макета для рендеринга шаблона внутри. Указанное имя — это имя файла макета в /src/Template/Layout без расширения .ctp.

Параметры

string $name
Имя файла макета для установки.

Возвращает


$this

setLayoutPath()source public

setLayoutPath( string $path )

Установить путь к файлам макета.

Параметры

string $path
Путь к файлам макета.

Возвращает


$this

setTemplate()source public

setTemplate( string $name )

Установить имя файла шаблона для рендеринга. Указанное имя — это имя файла в /src/Template/ без расширения .ctp.

Параметры

string $name
Имя файла шаблона для установки.

Возвращает


$this

setTemplatePath()source public

setTemplatePath( string $path )

Установить путь к файлам шаблонов.

Параметры

string $path
Путь к файлам шаблонов.

Возвращает


$this

setTheme()source public

setTheme( string|null $theme )

Установить используемую тему представления.

Параметры

string|null $theme
Имя темы.

Возвращает


$this

start()source public

start( string $name )

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

Вы можете использовать start для блока несколько раз, чтобы добавить или вставить содержимое в режиме захвата.

// Append content to an existing block.
$this->start('content');
echo $this->fetch('content');
echo 'Some new content';
$this->end();

// Prepend content to an existing block
$this->start('content');
echo 'Some new content';
echo $this->fetch('content');
$this->end();

Параметры

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

Возвращает


$this

См. также

\Cake\View\ViewBlock::start()

template()source public

template( string|null $name null )

Получить/установить имя файла шаблона для рендеринга. Указанное имя — это имя файла в /src/Template/ без расширения .ctp.

Устаревший

3.5.0 Используйте getTemplate()/setTemplate() вместо этого.

Параметры

string|null $name необязательно null
Имя файла шаблона для установки. Если null, возвращает текущее имя.

Возвращает

string|null

templatePath()source public

templatePath( string|null $path null )

Получить/установить путь к файлам шаблонов.

Устаревший

3.5.0 Используйте getTemplatePath()/setTemplatePath() вместо этого.

Параметры

string|null $path необязательно null
Путь к файлам шаблонов. Если null, возвращает текущий путь.

Возвращает

string|null

theme()source public

theme( string|null $theme null )

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

Устаревший

3.5.0 Используйте getTheme()/setTheme() вместо этого.

Параметры

string|null $theme необязательно null
Имя темы. Если null, возвращает текущую тему.

Возвращает

string|null

uuid()source public

uuid( string $object , string $url )

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

Параметры

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

Возвращает

string

Методы, используемые из Cake\View\CellTrait

_createCell()source protected

_createCell( string $className , string $action , string $plugin , array $options )

Создайте и настройте экземпляр ячейки.

Параметры

строка $className
Имя класса ячейки.
строка $action
Имя действия.
строка $plugin
Имя плагина.
массив $options
Параметры конструктора для ячейки.

Возвращает

Cake\View\Cell

cell()source protected

cell( string $cell , array $data [] , array $options [] )

Отображает заданную ячейку.

Пример:

// Taxonomy\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('Taxonomy.TagCloud::smallList', ['limit' => 10]);

// App\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('TagCloud::smallList', ['limit' => 10]);

Действие display будет использоваться по умолчанию, если действие не указано:

// Taxonomy\View\Cell\TagCloudCell::display()
$cell = $this->cell('Taxonomy.TagCloud');

Ячейки не отображаются, пока они не выведены.

Параметры

строка $cell

Вы должны указать имя ячейки и, необязательно, действие ячейки. Например: TagCloud::smallList вызовет View\Cell\TagCloudCell::smallList(), действие display будет вызвано по умолчанию, если не указано.

массив $data необязательно []

Дополнительные аргументы для метода ячейки. Например: cell('TagCloud::smallList', ['a1' => 'v1', 'a2' => 'v2']) соответствует View\Cell\TagCloud::smallList(v1, v2)

массив $options необязательно []
Параметры конструктора для ячейки.

Возвращает

Cake\View\Cell
Экземпляр ячейки

Выбрасывает

Cake\View\Exception\MissingCellException
Если класс ячейки не найден.
BadMethodCallException
Если класс ячейки не указал действие ячейки.

Методы, используемые из Cake\Event\EventDispatcherTrait

dispatchEvent()source public

dispatchEvent( string $name , array|null $data null , object|null $subject null )

Обёртка для создания и отправки событий.

Возвращает обработанное событие.

Параметры

строка $name
Имя события.
массив|null $data необязательно null

Любое значение, которое вы хотите передать вместе с этим событием, чтобы его могли прочитать слушатели.

объект|null $subject необязательно null

Объект, к которому относится это событие ($this по умолчанию).

Возвращает

Cake\Event\Event

eventManager()source public

eventManager( Cake\Event\EventManager $eventManager null )

Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

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

Устарело

3.5.0 Используйте getEventManager()/setEventManager() вместо этого.

Параметры

Cake\Event\EventManager $eventManager необязательно null
устанавливаемый eventManager

Возвращает

Cake\Event\EventManager

getEventManager()source public

getEventManager( )

Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

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

Возвращает

Cake\Event\EventManager

setEventManager()source public

setEventManager( Cake\Event\EventManager $eventManager )

Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

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

Параметры

Cake\Event\EventManager $eventManager
устанавливаемый eventManager

Возвращает


$this

Методы, используемые из Cake\Log\LogTrait

log()source public

log( mixed $msg , integer|string $level LogLevel::ERROR , string|array $context [] )

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

Параметры

смешанный $msg
Сообщение журнала.
целое число|строка $level необязательно LogLevel::ERROR
Уровень ошибки.
строка|массив $context необязательно []
Дополнительные данные журнала, относящиеся к этому сообщению.

Возвращает

boolean
Результат записи в журнал.

Методы, используемые из Cake\Routing\RequestActionTrait

requestAction()source public

requestAction( string|array $url , array $extra [] )

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

Внутри метода используется Router::reverse() для преобразования параметра $url в строковый URL. Следует использовать форматы URL, совместимые с Router::reverse().

Примеры

Базовый пример получения возвращаемого значения действия контроллера:

$variables = $this->requestAction('/articles/popular');

Базовый пример request action для получения отображенной страницы без макета:

$viewHtml = $this->requestAction('/articles/popular', ['return']);

Также можно передать URL в виде массива:

$vars = $this->requestAction(['controller' => 'articles', 'action' => 'popular']);

Передача других данных запроса

Вы можете передавать данные POST, GET, COOKIE и другие данные в запрос, используя соответствующие ключи. Куки можно передать с помощью ключа cookies. Параметры GET можно задать с помощью query, а данные POST можно отправить с помощью ключа post.

$vars = $this->requestAction('/articles/popular', [
  'query' => ['page' => 1],
  'cookies' => ['remember_me' => 1],
]);

Отправка значений среды или заголовков

По умолчанию действия, отправленные с помощью этого метода, будут использовать глобальные значения $_SERVER и $_ENV. Если вы хотите переопределить эти значения для действия запроса, вы можете указать эти значения:

$vars = $this->requestAction('/articles/popular', [
  'environment' => ['CONTENT_TYPE' => 'application/json']
]);

Передача сеанса

По умолчанию действия, отправленные с помощью этого метода, будут использовать стандартный объект сеанса. Если требуется использовать определенный экземпляр сеанса, необходимо указать его.

$vars = $this->requestAction('/articles/popular', [
  'session' => new Session($someSessionConfig)
]);

Устарело

3.3.0 Необходимо переработать код для использования View Cells вместо этого метода.

Параметры

строка|массив $url

Строковый или массивовый URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные аргументы в параметре $url.

массив $extra необязательно []

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

Возвращает

смешанный

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


Методы, используемые из Cake\View\ViewVarsTrait

createView()source public

createView( string|null $viewClass null )

Создаёт экземпляр класса представления на основе текущей конфигурации.

Параметры

строка|null $viewClass необязательно null
Необязательное имя класса представления с пространством имён для создания экземпляра.

Возвращает

Cake\View\View

Выбрасывает

Cake\View\Exception\MissingViewException
Если класс представления не найден.

set()source public

set( string|array $name , mixed $value null )

Сохраняет переменную или ассоциативный массив переменных для использования внутри шаблона.

Параметры

строка|массив $name
Строка или массив данных.
смешанный $value необязательно null

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

Возвращает


$this

viewBuilder()source public

viewBuilder( )

Получение используемого билдера представлений.

Возвращает

Cake\View\ViewBuilder
END_OF_DOCUMENT_MARKER

viewOptions()source public

viewOptions( string|array|null $options null , boolean $merge true )

Получить/установить допустимые параметры представления в свойстве _validViewOptions объекта. Свойство создаётся как пустой массив, если оно не задано. Если метод вызывается без параметров, он вернёт текущий список допустимых параметров представления. См. createView().

Параметры

string|array|null $options необязательно null
Строка или массив строк, которые будут добавлены к _validViewOptions.
boolean $merge необязательно true

Флаг, определяющий, сливать или перезаписывать существующие допустимые параметры представления. По умолчанию true.

Возвращает

array
Обновлённые параметры представления в виде массива.

Магические методы, унаследованные от Cake\Event\EventDispatcherInterface

getEventManager()

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

$_responseTypesource

protected string

Тип ответа.

'json'

$_specialVarssource

protected array

Список специальных параметров представления.

['_serialize', '_jsonOptions', '_jsonp']

$layoutPathsource

public string

Расположение JSON-макетов находится в подкаталоге json каталога Layouts/

'json'

$subDirsource

public string

JSON-представления расположены в подкаталоге 'json' представлений контроллеров.

'json'

© 2005–2018 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/3.5/class-Cake.View.JsonView.html

Spec-Zone.ru

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