UrlMatcher
class UrlMatcher implements UrlMatcherInterface, RequestMatcherInterface
UrlMatcher matches URL based on a set of routes.
Constants
REQUIREMENT_MATCH | |
REQUIREMENT_MISMATCH | |
ROUTE_MATCH | |
Properties
protected | $context | | |
protected | $allow | Collects HTTP methods that would be allowed for the request. | |
protected | $allowSchemes | Collects URI schemes that would be allowed for the request. | |
protected | $routes | | |
protected | $request | | |
protected | $expressionLanguage | | |
protected ExpressionFunctionProviderInterface[] | $expressionLanguageProviders | | |
Methods
Details
Parameters
Sets the request context.
Parameters
Gets the request context.
Return Value
array
match(string $pathinfo)
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.
Parameters
string | $pathinfo | The path info to be parsed (raw format, i.e. not urldecoded) |
Return Value
array | An array of parameters |
Exceptions
array
matchRequest(Request $request)
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.
Parameters
Return Value
array | An array of parameters |
Exceptions
Parameters
protected array
matchCollection(string $pathinfo, RouteCollection $routes)
Tries to match a URL with a set of routes.
Parameters
string | $pathinfo | The path info to be parsed |
RouteCollection | $routes | The set of routes |
Return Value
array | An array of parameters |
Exceptions
protected array
getAttributes(Route $route, string $name, array $attributes)
Returns an array of values to use as request attributes.
As this method requires the Route object, it is not available in matchers that do not have access to the matched Route instance (like the PHP and Apache matcher dumpers).
Parameters
Route | $route | The route we are matching against |
string | $name | The name of the route |
array | $attributes | An array of attributes from the matcher |
Return Value
array | An array of parameters |
protected array
handleRouteRequirements(string $pathinfo, string $name, Route $route)
Handles specific route requirements.
Parameters
string | $pathinfo | The path |
string | $name | The route name |
Route | $route | The route |
Return Value
array | The first element represents the status, the second contains additional information |
protected array
mergeDefaults(array $params, array $defaults)
Get merged default parameters.
Parameters
array | $params | The parameters |
array | $defaults | The defaults |
Return Value
array | Merged default parameters |
protected
getExpressionLanguage()
protected
createRequest($pathinfo)
Parameters