Symfony API
Class

Symfony\Component\Routing\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.

setMethods(string|array $methods)

Sets the HTTP methods (e.g.

ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

addResource(ResourceInterface $resource)

Adds a resource for this collection.

Details

at line 38
public __clone()

at line 54
public 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()

at line 64
public int count()

Gets the number of Routes in this collection.

Return Value

int The number of routes

at line 75
public add(string $name, Route $route)

Adds a route.

Parameters

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

at line 87
public Route[] all()

Returns all routes in this collection.

Return Value

Route[] An array of routes

at line 99
public 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

at line 109
public 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

at line 122
public 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

at line 141
public 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

at line 163
public 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

at line 179
public setCondition(string $condition)

Sets a condition on all routes.

Existing conditions will be overridden.

Parameters

string $condition The condition

at line 193
public 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

at line 209
public 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

at line 225
public 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

at line 239
public 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

at line 251
public 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

at line 263
public ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

Return Value

ResourceInterface[] An array of resources

at line 273
public addResource(ResourceInterface $resource)

Adds a resource for this collection.

Parameters

ResourceInterface $resource A resource instance