Класс ControllerFactoryFilter
Фильтр диспетчера, который создаёт контроллер для обработки запроса.
Этот фильтр преобразует параметры запроса в экземпляр контроллера и прикрепляет его к объекту события.
- Cake\Routing\DispatcherFilter реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait
-
Cake\Routing\Filter\ControllerFactoryFilter
Краткое описание свойств
-
$_priorityprotectedПриоритет установлен высоким, чтобы позволить другим фильтрам быть вызванными первыми.integer
Унаследованные свойства
Краткое описание методов
- _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Исключения
ReflectionExceptionbeforeDispatch()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 - Экземпляр события.
Возвращает
mixedimplementedEvents()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
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