class Router implements RouterInterface, RequestMatcherInterface
The Router class is an example of the integration of all pieces of the routing system for easier use.
protected UrlMatcherInterface|null | $matcher | ||
protected UrlGeneratorInterface|null | $generator | ||
protected RequestContext | $context | ||
protected LoaderInterface | $loader | ||
protected RouteCollection|null | $collection | ||
protected mixed | $resource | ||
protected array | $options | ||
protected LoggerInterface|null | $logger |
__construct(LoaderInterface $loader, mixed $resource, array $options = array(), RequestContext $context = null, LoggerInterface $logger = null) | ||
setOptions(array $options) Sets options. | ||
setOption(string $key, mixed $value) Sets an option. | ||
mixed | getOption(string $key) Gets an option value. | |
RouteCollection | getRouteCollection() Gets the RouteCollection instance associated with this Router. | |
setContext(RequestContext $context) Sets the request context. | ||
RequestContext | getContext() Gets the request context. | |
setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFactory) Sets the ConfigCache factory to use. | ||
string | generate(string $name, mixed $parameters = array(), int $referenceType = self::ABSOLUTE_PATH) Generates a URL or path for a specific route based on the given parameters. | |
array | match(string $pathinfo) Tries to match a URL path with a set of routes. | |
array | matchRequest(Request $request) Tries to match a request with a set of routes. | |
UrlMatcherInterface | getMatcher() Gets the UrlMatcher instance associated with this Router. | |
UrlGeneratorInterface | getGenerator() Gets the UrlGenerator instance associated with this Router. | |
addExpressionLanguageProvider(ExpressionFunctionProviderInterface $provider) | ||
GeneratorDumperInterface | getGeneratorDumperInstance() | |
MatcherDumperInterface | getMatcherDumperInstance() |
LoaderInterface | $loader | A LoaderInterface instance |
mixed | $resource | The main resource to load |
array | $options | An array of options |
RequestContext | $context | The context |
LoggerInterface | $logger | A logger instance |
Sets options.
Available options:
array | $options | An array of options |
InvalidArgumentException | When unsupported option is provided |
Sets an option.
string | $key | The key |
mixed | $value | The value |
InvalidArgumentException |
Gets an option value.
string | $key | The key |
mixed | The value |
InvalidArgumentException |
Gets the RouteCollection instance associated with this Router.
RouteCollection | A RouteCollection instance |
Sets the request context.
RequestContext | $context |
Gets the request context.
RequestContext | The context |
Sets the ConfigCache factory to use.
ConfigCacheFactoryInterface | $configCacheFactory |
Generates a URL or path for a specific route based on the given parameters.
Parameters that reference placeholders in the route pattern will substitute them in the path or host. Extra params are added as query string to the URL.
When the passed reference type cannot be generated for the route because it requires a different host or scheme than the current one, the method will return a more comprehensive reference that includes the required params. For example, when you call this method with $referenceType = ABSOLUTE_PATH but the route requires the https scheme whereas the current scheme is http, it will instead return an ABSOLUTE_URL with the https scheme and the current host. This makes sure the generated URL matches the route in any case.
If there is no route with the given name, the generator must throw the RouteNotFoundException.
The special parameter _fragment will be used as the document fragment suffixed to the final URL.
string | $name | The name of the route |
mixed | $parameters | An array of parameters |
int | $referenceType | The type of reference to be generated (one of the constants) |
string | The generated URL |
RouteNotFoundException | If the named route doesn't exist |
MissingMandatoryParametersException | When some parameters are missing that are mandatory for the route |
InvalidParameterException | When a parameter value for a placeholder is not correct because it does not match the requirement |
Tries to match a URL path with a set of routes.
If the matcher can not find information, it must throw one of the exceptions documented below.
string | $pathinfo | The path info to be parsed (raw format, i.e. not urldecoded) |
array | An array of parameters |
NoConfigurationException | If no routing configuration could be found |
ResourceNotFoundException | If the resource could not be found |
MethodNotAllowedException | If the resource was found but the request method is not allowed |
Tries to match a request with a set of routes.
If the matcher can not find information, it must throw one of the exceptions documented below.
Request | $request |
array | An array of parameters |
NoConfigurationException | If no routing configuration could be found |
ResourceNotFoundException | If no matching resource could be found |
MethodNotAllowedException | If a matching resource was found but the request method is not allowed |
Gets the UrlMatcher instance associated with this Router.
UrlMatcherInterface | A UrlMatcherInterface instance |
Gets the UrlGenerator instance associated with this Router.
UrlGeneratorInterface | A UrlGeneratorInterface instance |
ExpressionFunctionProviderInterface | $provider |
GeneratorDumperInterface |
MatcherDumperInterface |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Routing/Router.html