Spec-Zone.ru › CakePHP 3.8

Класс ControllerFactoryFilter

Фильтр диспетчера, который создаёт контроллер для обработки запроса.

Этот фильтр преобразует параметры запроса в экземпляр контроллера и прикрепляет его к объекту события.

Cake\Routing\DispatcherFilter реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait
Расширен Cake\Routing\Filter\ControllerFactoryFilter
Пространство имён: Cake\Routing\Filter
Расположение: Routing/Filter/ControllerFactoryFilter.php

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

  • $_priority protected
    integer
    Приоритет установлен высоким, чтобы позволить другим фильтрам быть вызванными первыми.

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

  • _defaultConfig _config, _configInitialized

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

  • _getController() protected
    Получает контроллер для использования, либо плагин, либо прикладной контроллер.
  • beforeDispatch() public

    Преобразует параметры запроса в контроллер и прикрепляет контроллер к объекту события.

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

_getController()source protected

_getController( Cake\Http\ServerRequest $request , Cake\Http\Response $response )

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

Параметры

Cake\Http\ServerRequest $request
Объект запроса
Cake\Http\Response $response
Ответ для контроллера.

Возвращает

Cake\Controller\Controller

Исключения

ReflectionException

beforeDispatch()source public

beforeDispatch( Cake\Event\Event $event )

Преобразует параметры запроса в контроллер и прикрепляет контроллер к объекту события.

Параметры

Cake\Event\Event $event
Экземпляр события.

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

Cake\Routing\DispatcherFilter::beforeDispatch()

Наследованные методы из Cake\Routing\DispatcherFilter

__construct()source public

__construct( array $config = [] )

Конструктор.

Параметры

массив $config необязательно []
Настройки фильтра.

Исключения

InvalidArgumentException
Когда условия «when» не вызываемы.

afterDispatch()source public

afterDispatch( Cake\Event\Event $event )

Метод, вызываемый после того, как контроллер обработает запрос и сгенерирует ответ. В этот момент можно изменить объект ответа, так как он ещё не отправлен клиенту.

Если возвращено false, событие будет остановлено, и больше никаких слушателей не будут уведомлены. В качестве альтернативы, можно вызвать $event->stopPropagation() для достижения того же результата.

Параметры

Cake\Event\Event $event

объект контейнера, содержащий ключи request и response в свойстве data.

handle()source public

handle( Cake\Event\Event $event )

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

Параметры

Cake\Event\Event $event
Экземпляр события.

Возвращает

mixed

implementedEvents()source public

implementedEvents( )

Возвращает список событий, за которыми этот фильтр наблюдает. Диспетчер уведомляет о 2 разных событиях Dispatcher.before и Dispatcher.after. По умолчанию этот класс подключает методы preDispatch и postDispatch соответственно.

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

Возвращает

массив

Реализация

Cake\Event\EventListenerInterface::implementedEvents()

matches()source public

matches( Cake\Event\Event $event )

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

Параметры

Cake\Event\Event $event
Событие для сопоставления.

Возвращает

boolean

Наследованные методы из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Удаляет отдельный ключ конфигурации.

Параметры

строка $key
Ключ для удаления.

Исключения

Cake\Core\Exception\Exception
при попытке перезаписать существующую конфигурацию

_configRead()source protected

_configRead( string|null $key )

Читает ключ конфигурации.

Параметры

строка|null $key
Ключ для чтения.

Возвращает

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

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge = false )

Записывает ключ конфигурации.

Параметры

строка|массив $key
Ключ для записи.
смешанный тип $value
Значение для записи.
boolean|строка $merge необязательно false

True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.

Исключения

Cake\Core\Exception\Exception
при попытке перезаписи существующей конфигурации

config()source public deprecated

config( string|array|null $key = null , mixed|null $value = null , boolean $merge = true )

Получает/устанавливает конфигурацию.

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

Чтение всей конфигурации:

$this->config();

Чтение определённого значения:

$this->config('key');

Чтение вложенного значения:

$this->config('some.nested.key');

Установка определённого значения:

$this->config('key', $value);

Установка вложенного значения:

$this->config('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->config(['one' => 'value', 'another' => 'value']);

Устарело

3.4.0 используйте setConfig()/getConfig() вместо этого.

Параметры

строка|массив|null $key необязательно null
Ключ для получения/установки или полный массив конфигураций.
смешанный тип|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Выполнять ли рекурсивное слияние или перезаписывать существующую конфигурацию, по умолчанию true.

Возвращает

смешанный тип
Значение конфигурации, которое считывается, или сам объект при операциях записи.

Исключения

Cake\Core\Exception\Exception
При попытке установить недействительный ключ.

configShallow()source public

configShallow( string|array $key , mixed|null $value = null )

Сливает предоставленную конфигурацию с существующей конфигурацией. В отличие от config(), которое выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.

Установка определённого значения:

$this->configShallow('key', $value);

Установка вложенного значения:

$this->configShallow('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

строка|массив $key
Ключ для установки или полный массив конфигураций.
смешанный тип|null $value необязательно null
Значение для установки.

Возвращает


$this
END_OF_DOCUMENT_MARKER ```

getConfig()source public

getConfig( string|null $key = null , mixed $default = null )

Возвращает конфигурацию.

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

Чтение всей конфигурации:

$this->getConfig();

Чтение конкретного значения:

$this->getConfig('key');

Чтение вложенного значения:

$this->getConfig('some.nested.key');

Чтение со значением по умолчанию:

$this->getConfig('some-key', 'default-value');

Параметры

string|null $key необязательно null
Ключ для получения или null для всей конфигурации.
mixed $default необязательно null
Возвращаемое значение, если ключ не существует.

Возвращает

mixed
Данные конфигурации по указанному ключу или null, если ключ не существует.

setConfig()source public

setConfig( string|array $key , mixed|null $value = null , boolean $merge = true )

Устанавливает конфигурацию.

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

Установка конкретного значения:

$this->setConfig('key', $value);

Установка вложенного значения:

$this->setConfig('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->setConfig(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или полный массив конфигураций.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Флаг рекурсивного слияния или перезаписи существующей конфигурации, по умолчанию true.

Возвращает


$this

Выбрасывает

Cake\Core\Exception\Exception
При попытке установить недопустимый ключ.

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

$_prioritysource

protected integer

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

50

© 2005–present 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.8/class-Cake.Routing.Filter.ControllerFactoryFilter.html

Spec-Zone.ru

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