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