FestinHegre/vendor/symfony/routing
2024-09-26 17:26:04 +02:00
..
Annotation Vendor 2024-09-26 17:26:04 +02:00
Attribute Vendor 2024-09-26 17:26:04 +02:00
DependencyInjection Vendor 2024-09-26 17:26:04 +02:00
Exception Vendor 2024-09-26 17:26:04 +02:00
Generator Vendor 2024-09-26 17:26:04 +02:00
Loader Vendor 2024-09-26 17:26:04 +02:00
Matcher Vendor 2024-09-26 17:26:04 +02:00
Requirement Vendor 2024-09-26 17:26:04 +02:00
Alias.php Vendor 2024-09-26 17:26:04 +02:00
CHANGELOG.md Vendor 2024-09-26 17:26:04 +02:00
CompiledRoute.php Vendor 2024-09-26 17:26:04 +02:00
composer.json Vendor 2024-09-26 17:26:04 +02:00
LICENSE Vendor 2024-09-26 17:26:04 +02:00
README.md Vendor 2024-09-26 17:26:04 +02:00
RequestContext.php Vendor 2024-09-26 17:26:04 +02:00
RequestContextAwareInterface.php Vendor 2024-09-26 17:26:04 +02:00
Route.php Vendor 2024-09-26 17:26:04 +02:00
RouteCollection.php Vendor 2024-09-26 17:26:04 +02:00
RouteCompiler.php Vendor 2024-09-26 17:26:04 +02:00
RouteCompilerInterface.php Vendor 2024-09-26 17:26:04 +02:00
Router.php Vendor 2024-09-26 17:26:04 +02:00
RouterInterface.php Vendor 2024-09-26 17:26:04 +02:00

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 7.1 is backed by redirection.io.

redirection.io logs all your websites 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