RouteCollection

class RouteCollection implements IteratorAggregate, Countable

A RouteCollection represents a set of Route instances.

When adding a route at the end of the collection, an existing route with the same name is removed first. So there can only be one route with a given name.

Methods

__clone()
ArrayIterator getIterator()

Gets the current RouteCollection as an Iterator that includes all routes.

int count()

Gets the number of Routes in this collection.

add(string $name, Route $route)

Adds a route.

Route[] all()

Returns all routes in this collection.

Route|null get(string $name)

Gets a route by name.

remove(string|array $name)

Removes a route or an array of routes by name from the collection.

addCollection(RouteCollection $collection)

Adds a route collection at the end of the current set by appending all routes of the added collection.

addPrefix(string $prefix, array $defaults = array(), array $requirements = array())

Adds a prefix to the path of all child routes.

setHost(string $pattern, array $defaults = array(), array $requirements = array())

Sets the host pattern on all routes.

setCondition(string $condition)

Sets a condition on all routes.

addDefaults(array $defaults)

Adds defaults to all routes.

addRequirements(array $requirements)

Adds requirements to all routes.

addOptions(array $options)

Adds options to all routes.

setSchemes(string|array $schemes)

Sets the schemes (e.g. 'https') all child routes are restricted to.

setMethods(string|array $methods)

Sets the HTTP methods (e.g. 'POST') all child routes are restricted to.

ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

addResource(ResourceInterface $resource)

Adds a resource for this collection.

Details

__clone()

ArrayIterator getIterator()

Gets the current RouteCollection as an Iterator that includes all routes.

It implements \IteratorAggregate.

Return Value

ArrayIterator An \ArrayIterator object for iterating over routes

See also

all()

int count()

Gets the number of Routes in this collection.

Return Value

int The number of routes

add(string $name, Route $route)

Adds a route.

Parameters

string $name The route name
Route $route A Route instance

Route[] all()

Returns all routes in this collection.

Return Value

Route[] An array of routes

Route|null get(string $name)

Gets a route by name.

Parameters

string $name The route name

Return Value

Route|null A Route instance or null when not found

remove(string|array $name)

Removes a route or an array of routes by name from the collection.

Parameters

string|array $name The route name or an array of route names

addCollection(RouteCollection $collection)

Adds a route collection at the end of the current set by appending all routes of the added collection.

Parameters

RouteCollection $collection A RouteCollection instance

addPrefix(string $prefix, array $defaults = array(), array $requirements = array())

Adds a prefix to the path of all child routes.

Parameters

string $prefix An optional prefix to add before each pattern of the route collection
array $defaults An array of default values
array $requirements An array of requirements

setHost(string $pattern, array $defaults = array(), array $requirements = array())

Sets the host pattern on all routes.

Parameters

string $pattern The pattern
array $defaults An array of default values
array $requirements An array of requirements

setCondition(string $condition)

Sets a condition on all routes.

Existing conditions will be overridden.

Parameters

string $condition The condition

addDefaults(array $defaults)

Adds defaults to all routes.

An existing default value under the same name in a route will be overridden.

Parameters

array $defaults An array of default values

addRequirements(array $requirements)

Adds requirements to all routes.

An existing requirement under the same name in a route will be overridden.

Parameters

array $requirements An array of requirements

addOptions(array $options)

Adds options to all routes.

An existing option value under the same name in a route will be overridden.

Parameters

array $options An array of options

setSchemes(string|array $schemes)

Sets the schemes (e.g. 'https') all child routes are restricted to.

Parameters

string|array $schemes The scheme or an array of schemes

setMethods(string|array $methods)

Sets the HTTP methods (e.g. 'POST') all child routes are restricted to.

Parameters

string|array $methods The method or an array of methods

ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

Return Value

ResourceInterface[] An array of resources

addResource(ResourceInterface $resource)

Adds a resource for this collection.

Parameters

ResourceInterface $resource A resource instance

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Routing/RouteCollection.html