function RouteProvider::getAllRoutes

Returns all the routes on the system.

Usage of this method is discouraged for performance reasons. If possible, use RouteProviderInterface::getRoutesByNames() or RouteProviderInterface::getRoutesByPattern() instead.

Return value

\Symfony\Component\Routing\Route[] An iterator of routes keyed by route name.

Overrides RouteProviderInterface::getAllRoutes

File

core/lib/Drupal/Core/Routing/RouteProvider.php, line 401

Class

RouteProvider
A Route Provider front-end for all Drupal-stored routes.

Namespace

Drupal\Core\Routing

Code

public function getAllRoutes() {
  $select = $this->connection
    ->select($this->tableName, 'router')
    ->fields('router', [
    'name',
    'route',
  ]);
  $routes = $select->execute()
    ->fetchAllKeyed();
  $result = [];
  foreach ($routes as $name => $route) {
    $result[$name] = unserialize($route);
  }
  $array_object = new \ArrayObject($result);
  return $array_object->getIterator();
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.