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