Spec-Zone.ru › CakePHP 3.4

Класс 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 реализует Cake\Event\EventDispatcherInterface использует 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, 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, будут использоваться все доступные переменные представления.

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

смешанное
Данные для сериализации.

_serialize()source protected

_serialize( array|string|boolean $serialize )

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

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

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

Параметры

массив|строка|логическое значение $serialize

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

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

строка|ложь
Сериализованные данные или boolean 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
Имя атрибута для получения.

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

смешанное

__set()source public

__set( string $name , mixed $value )

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

Параметры

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

_checkFilePath()source protected

_checkFilePath( string $file , string $path )

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

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

Параметры

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

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

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

Исключения

InvalidArgumentException
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 будут преобразовываться в нижний регистр с подчеркиванием по умолчанию. Это означает, что у вас могут быть имена действий с CamelCase, которые ссылаются на представления 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

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

См.

\Cake\View\ViewBlock::concat()

assign()source public

assign( string $name , mixed $value )

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

Параметры

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

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

См.

\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, чтобы вызвать колбеки helpers 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
Логическое значение для включения/отключения.

end()source public

end( )

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

См. также

\Cake\View\ViewBlock::end()

exists()source public

exists( string $name )

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

Параметры

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

Возвращает

логическое значение

extend()source public

extend( string $name )

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

Параметры

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

Исключения

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

fetch()source public

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

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

Параметры

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

Возвращает

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

См. также

\Cake\View\ViewBlock::get()

get()source public

get( string $var , mixed $default null )

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

Параметры

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

Возвращает

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

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

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

Возвращает

строка

getVars()source public

getVars( )

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

Возвращает

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

helpers()source public

helpers( )

Получить реестр helpers, используемый этим классом View.

Возвращает

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

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

См. также

\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
Имя блока

См. также

\Cake\View\ViewBlock::set()

setLayout()source public

setLayout( string $name )

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

Параметры

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

setLayoutPath()source public

setLayoutPath( string $path )

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

Параметры

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

setTemplate()source public

setTemplate( string $name )

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

Параметры

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

setTemplatePath()source public

setTemplatePath( string $path )

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

Параметры

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

setTheme()source public

setTheme( string $theme )

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

Параметры

string $theme
Имя темы.

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
Имя блока для захвата.

См. также

\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 )

Генерирует уникальный, не случайный ID 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
менеджер событий для установки

Возвращает

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
менеджер событий для установки

Возвращает


$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 для получения отображённой страницы без макета.

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

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

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

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

Вы можете передать POST, GET, COOKIE и другие данные в запрос, используя соответствующие ключи. Cookies могут быть переданы с помощью ключа 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 Вы должны переработать свой код, чтобы использовать ячейки представлений вместо этого метода.

Параметры

строка|массив $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–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/3.4/class-Cake.View.JsonView.html

Spec-Zone.ru

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