X\choro 48f1b97cc3 first commit 1 anno fa
..
Annotation 48f1b97cc3 first commit 1 anno fa
Attribute 48f1b97cc3 first commit 1 anno fa
DependencyInjection 48f1b97cc3 first commit 1 anno fa
Exception 48f1b97cc3 first commit 1 anno fa
Generator 48f1b97cc3 first commit 1 anno fa
Loader 48f1b97cc3 first commit 1 anno fa
Matcher 48f1b97cc3 first commit 1 anno fa
Requirement 48f1b97cc3 first commit 1 anno fa
Alias.php 48f1b97cc3 first commit 1 anno fa
CHANGELOG.md 48f1b97cc3 first commit 1 anno fa
CompiledRoute.php 48f1b97cc3 first commit 1 anno fa
LICENSE 48f1b97cc3 first commit 1 anno fa
README.md 48f1b97cc3 first commit 1 anno fa
RequestContext.php 48f1b97cc3 first commit 1 anno fa
RequestContextAwareInterface.php 48f1b97cc3 first commit 1 anno fa
Route.php 48f1b97cc3 first commit 1 anno fa
RouteCollection.php 48f1b97cc3 first commit 1 anno fa
RouteCompiler.php 48f1b97cc3 first commit 1 anno fa
RouteCompilerInterface.php 48f1b97cc3 first commit 1 anno fa
Router.php 48f1b97cc3 first commit 1 anno fa
RouterInterface.php 48f1b97cc3 first commit 1 anno fa
composer.json 48f1b97cc3 first commit 1 anno fa

README.md

Routing Component

The Routing component maps an HTTP request to a set of configuration variables.

Getting Started

$ composer require symfony/routing
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

The Routing component for Symfony 6.4 is backed by redirection.io.

redirection.io logs all your website’s HTTP traffic, and lets you fix errors with redirect rules in seconds. Give your marketing, SEO and IT teams the right tool to manage your website traffic efficiently!

Help Symfony by sponsoring its development!

Resources