ControllerResolverInterface

interface ControllerResolverInterface

A ControllerResolverInterface implementation knows how to determine the controller to execute based on a Request object.

It can also determine the arguments to pass to the Controller.

A Controller can be any valid PHP callable.

Methods

callable|false getController(Request $request)

Returns the Controller instance associated with a Request.

array getArguments(Request $request, callable $controller) deprecated

Returns the arguments to pass to the controller.

Details

callable|false getController(Request $request)

Returns the Controller instance associated with a Request.

As several resolvers can exist for a single application, a resolver must return false when it is not able to determine the controller.

The resolver must only throw an exception when it should be able to load controller but cannot because of some errors made by the developer.

Parameters

Request $request

Return Value

callable|false A PHP callable representing the Controller, or false if this resolver is not able to determine the controller

Exceptions

LogicException If the controller can't be found

array getArguments(Request $request, callable $controller) deprecated

deprecated

This method is deprecated as of 3.1 and will be removed in 4.0. Please use the {@see ArgumentResolverInterface} instead.

Returns the arguments to pass to the controller.

Parameters

Request $request A Request instance
callable $controller A PHP callable

Return Value

array An array of arguments to pass to the controller

Exceptions

RuntimeException When value for argument given is not provided