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 40
public __clone()

at line 56
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 66
public int count()

Gets the number of Routes in this collection.

Return Value

int The number of routes

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

Adds a route.

Parameters

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

at line 91
public Route[] all()

Returns all routes in this collection.

Return Value

Route[] An array of routes

at line 103
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 113
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 128
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 149
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 171
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 187
public setCondition(string $condition)

Sets a condition on all routes.

Existing conditions will be overridden.

Parameters

string $condition The condition

at line 201
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 217
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 233
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 247
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 259
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 271
public ResourceInterface[] getResources()

Returns an array of resources loaded to build this collection.

Return Value

ResourceInterface[] An array of resources

at line 281
public addResource(ResourceInterface $resource)

Adds a resource for this collection.

Parameters

ResourceInterface $resource A resource instance