ControllerResolver
class ControllerResolver implements ControllerResolverInterface
Это реализация использует атрибут запроса '_controller' для определения контроллера, который нужно выполнить.
Методы
| __construct(LoggerInterface $logger = null) | ||
| callable|false | getController(Request $request) Возвращает экземпляр контроллера, связанный с запросом. | |
| callable | createController(string $controller) Возвращает вызываемый объект для заданного контроллера. | |
| object | instantiateController(string $class) Возвращает инициализированный контроллер. |
Детали
__construct(LoggerInterface $logger = null)
Параметры
| LoggerInterface | $logger |
callable|false getController(Request $request)
Возвращает экземпляр контроллера, связанный с запросом.
Поскольку для одного приложения может существовать несколько разрешителей, разрешитель должен возвращать false, когда он не может определить контроллер.
Разрешитель должен выбрасывать исключение только тогда, когда он должен загрузить контроллер, но не может из-за ошибок, допущенных разработчиком.
Параметры
| Request | $request |
Возвращаемое значение
| callable|false | PHP вызываемый объект, представляющий контроллер, или false, если этот разрешитель не может определить контроллер |
Исключения
| LogicException | Если контроллер был найден на основе запроса, но он не является вызываемым объектом |
protected callable createController(string $controller)
Возвращает вызываемый объект для заданного контроллера.
Параметры
| string | $controller | Строка контроллера |
Возвращаемое значение
| callable | PHP вызываемый объект |
protected object instantiateController(string $class)
Возвращает инициализированный контроллер.
Параметры
| string | $class | Имя класса |
Возвращаемое значение
| object |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/HttpKernel/Controller/ControllerResolver.html