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