Класс Dispatcher
Dispatcher преобразует запросы в действия контроллеров. Он использует обработанный запрос для поиска и загрузки правильного контроллера. Если найден, то вызывается запрошенное действие контроллера
- Cake\Routing\Dispatcher использует Cake\Event\EventDispatcherTrait
Устаревшее:
3.6.0 Dispatcher устарел. Вы должны обновить ваше приложение для использования реализации Http\Server вместо него.
Расположение: Routing/Dispatcher.php
Краткое описание свойств
- Подключенные объекты фильтра
$_filtersprotected
Унаследованные свойства
Краткое описание методов
- Добавить фильтр в данный диспетчер.
-
Обрабатывает и вызывает данный запрос, передавая управление вовлеченному контроллеру. Если контроллер настроен на автоматическую отрисовку, через Controller::$autoRender, то Dispatcher отобразит представление.
- Получить список подключенных фильтров.
Подробное описание методов
addFilter()source public deprecated
addFilter( Cake\Event\EventListenerInterface $filter )
Добавить фильтр в данный диспетчер.
Добавленный фильтр будет прикреплен к диспетчеру событий, используемому этим диспетчером.
Параметры
-
Cake\Event\EventListenerInterface$filter Фильтр для подключения. Может быть любым EventListenerInterface. Обычно экземпляр \Cake\Routing\DispatcherFilter.
dispatch()source public deprecated
dispatch( Cake\Http\ServerRequest $request , Cake\Http\Response $response )
Обрабатывает и вызывает данный запрос, передавая управление вовлеченному контроллеру. Если контроллер настроен на автоматическую отрисовку, через Controller::$autoRender, то Dispatcher отобразит представление.
Действия в CakePHP могут быть любым публичным методом контроллера, который не объявлен в Controller. Если вы хотите, чтобы методы контроллеров были публичными и недоступными по URL, то добавьте к ним префикс _. Например public function _loadPosts() { } будет недоступен через URL. Приватные и защищенные методы также недоступны по URL.
Если контроллер с данным именем не найден, invoke() выбросит исключение. Если контроллер найден, но действие не найдено, будет выброшено исключение.
Параметры
-
Cake\Http\ServerRequest$request - Объект запроса для обработки.
-
Cake\Http\Response$response - Объект ответа, в который будут помещены результаты обработки.
Возвращаемое значение
строка|nullесли
$request['return'] установлен, то возвращает тело ответа, в противном случае nullИсключения
LogicExceptionКогда контроллер не был создан в событии Dispatcher.beforeDispatch.
filters()source public deprecated
filters( )
Получить список подключенных фильтров.
Возвращаемое значение
Cake\Event\EventListenerInterface[]Методы, используемые из 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\EventeventManager()source public deprecated
eventManager( Cake\Event\EventManager $eventManager = null )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации любых новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по желанию.
Параметры
-
Cake\Event\EventManager$eventManagerнеобязательно null - менеджер событий для установки
Возвращаемое значение
Cake\Event\EventManagergetEventManager()source public
getEventManager( )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации любых новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по желанию.
Возвращаемое значение
Cake\Event\EventManagersetEventManager()source public
setEventManager( Cake\Event\EventManager $eventManager )
Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.
Вы можете использовать этот экземпляр для регистрации любых новых слушателей или обратных вызовов для событий объекта, или создавать свои собственные события и вызывать их по желанию.
Параметры
-
Cake\Event\EventManager$eventManager - менеджер событий для установки
Возвращаемое значение
$this
Подробное описание свойств
© 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.Dispatcher.html