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.8/Symfony/Component/HttpKernel/Controller/ControllerResolver.html