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|Route[] 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|string[] $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|string[] $schemes)

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

setMethods(string|string[] $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. If the resource already exists it is not added.

Details

__clone()

ArrayIterator|Route[] getIterator()

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

It implements \IteratorAggregate.

Return Value

ArrayIterator|Route[] 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|string[] $name)

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

Parameters

string|string[] $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

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|string[] $schemes)

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

Parameters

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

setMethods(string|string[] $methods)

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

Parameters

string|string[] $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. If the resource already exists it is not added.

Parameters

ResourceInterface $resource

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