class RewritingRouter implements RouterInterface, RequestMatcherInterface

Class RewritingRouter

Methods

setContext( RequestContext $context)

Sets the request context.

RequestContext
getContext()

Gets the request context.

setOption($key, $value)

No description

RouteCollection
getRouteCollection()

Gets the RouteCollection instance associated with this Router.

string
generate( string $name, mixed $parameters = array(), Boolean|string $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.

Details

at line 58
setContext( RequestContext $context)

Sets the request context.

Parameters

RequestContext $context The context

at line 70
RequestContext getContext()

Gets the request context.

Return Value

RequestContext The context

at line 75
setOption($key, $value)

Parameters

$key
$value

at line 85
RouteCollection getRouteCollection()

Gets the RouteCollection instance associated with this Router.

Return Value

RouteCollection A RouteCollection instance

at line 118
string generate( string $name, mixed $parameters = array(), Boolean|string $referenceType = self::ABSOLUTE_PATH)

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 = ABSOLUTEPATH but the route requires the https scheme whereas the current scheme is http, it will instead return an ABSOLUTEURL 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.

Parameters

string $name The name of the route
mixed $parameters An array of parameters
Boolean|string $referenceType The type of reference to be generated (one of the constants)

Return Value

string The generated URL

Exceptions

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

at line 138
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

ResourceNotFoundException If the resource could not be found
MethodNotAllowedException If the resource was found but the request method is not allowed

at line 156
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

Request $request The request to match

Return Value

array An array of parameters

Exceptions

UrlRewritingException
ResourceNotFoundException