protected static function RequestFormatRouteFilter::getAvailableFormats in Drupal 8
Same name and namespace in other branches
- 9 core/lib/Drupal/Core/Routing/RequestFormatRouteFilter.php \Drupal\Core\Routing\RequestFormatRouteFilter::getAvailableFormats()
Gets the set of formats across all routes in the collection.
Parameters
\Symfony\Component\Routing\RouteCollection $collection: The route collection to filter.
Return value
string[] All available formats.
3 calls to RequestFormatRouteFilter::getAvailableFormats()
- EarlyFormatSetter::filter in core/
modules/ jsonapi/ src/ Routing/ EarlyFormatSetter.php - Filters the route collection against a request and returns all matching routes.
- RequestFormatRouteFilter::filter in core/
lib/ Drupal/ Core/ Routing/ RequestFormatRouteFilter.php - Filters the route collection against a request and returns all matching routes.
- RequestFormatRouteFilter::getDefaultFormat in core/
lib/ Drupal/ Core/ Routing/ RequestFormatRouteFilter.php - Determines the default request format.
File
- core/
lib/ Drupal/ Core/ Routing/ RequestFormatRouteFilter.php, line 111
Class
- RequestFormatRouteFilter
- Provides a route filter, which filters by the request format.
Namespace
Drupal\Core\RoutingCode
protected static function getAvailableFormats(RouteCollection $collection) {
$all_formats = array_reduce($collection
->all(), function (array $carry, Route $route) {
// Routes without a '_format' requirement are assumed to require HTML.
$route_formats = !$route
->hasRequirement('_format') ? [
'html',
] : explode('|', $route
->getRequirement('_format'));
return array_merge($carry, $route_formats);
}, []);
return array_unique(array_filter($all_formats));
}