https://github.com/symfony/routing
Maps an HTTP request to a set of configuration variables
https://github.com/symfony/routing
component php router routing symfony symfony-component uri url
Last synced: 18 days ago
JSON representation
Maps an HTTP request to a set of configuration variables
- Host: GitHub
- URL: https://github.com/symfony/routing
- Owner: symfony
- License: mit
- Created: 2011-02-22T18:04:52.000Z (almost 15 years ago)
- Default Branch: 8.1
- Last Pushed: 2026-01-19T19:00:38.000Z (24 days ago)
- Last Synced: 2026-01-21T08:51:19.726Z (22 days ago)
- Topics: component, php, router, routing, symfony, symfony-component, uri, url
- Language: PHP
- Homepage: https://symfony.com/routing
- Size: 4.36 MB
- Stars: 7,631
- Watchers: 25
- Forks: 93
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Routing Component
=================
The Routing component maps an HTTP request to a set of configuration variables.
Getting Started
---------------
```bash
composer require symfony/routing
```
```php
use App\Controller\BlogController;
use Symfony\Component\Routing\Generator\UrlGenerator;
use Symfony\Component\Routing\Matcher\UrlMatcher;
use Symfony\Component\Routing\RequestContext;
use Symfony\Component\Routing\Route;
use Symfony\Component\Routing\RouteCollection;
$route = new Route('/blog/{slug}', ['_controller' => BlogController::class]);
$routes = new RouteCollection();
$routes->add('blog_show', $route);
$context = new RequestContext();
// Routing can match routes with incoming requests
$matcher = new UrlMatcher($routes, $context);
$parameters = $matcher->match('/blog/lorem-ipsum');
// $parameters = [
// '_controller' => 'App\Controller\BlogController',
// 'slug' => 'lorem-ipsum',
// '_route' => 'blog_show'
// ]
// Routing can also generate URLs for a given route
$generator = new UrlGenerator($routes, $context);
$url = $generator->generate('blog_show', [
'slug' => 'my-blog-post',
]);
// $url = '/blog/my-blog-post'
```
Sponsor
-------
Help Symfony by [sponsoring][3] its development!
Resources
---------
* [Documentation](https://symfony.com/doc/current/routing.html)
* [Contributing](https://symfony.com/doc/current/contributing/index.html)
* [Report issues](https://github.com/symfony/symfony/issues) and
[send Pull Requests](https://github.com/symfony/symfony/pulls)
in the [main Symfony repository](https://github.com/symfony/symfony)
[3]: https://symfony.com/sponsor