ligao 3d5201b28c Initial commit 11 months ago
..
Annotation 3d5201b28c Initial commit 11 months ago
DependencyInjection 3d5201b28c Initial commit 11 months ago
Exception 3d5201b28c Initial commit 11 months ago
Generator 3d5201b28c Initial commit 11 months ago
Loader 3d5201b28c Initial commit 11 months ago
Matcher 3d5201b28c Initial commit 11 months ago
Alias.php 3d5201b28c Initial commit 11 months ago
CHANGELOG.md 3d5201b28c Initial commit 11 months ago
CompiledRoute.php 3d5201b28c Initial commit 11 months ago
LICENSE 3d5201b28c Initial commit 11 months ago
README.md 3d5201b28c Initial commit 11 months ago
RequestContext.php 3d5201b28c Initial commit 11 months ago
RequestContextAwareInterface.php 3d5201b28c Initial commit 11 months ago
Route.php 3d5201b28c Initial commit 11 months ago
RouteCollection.php 3d5201b28c Initial commit 11 months ago
RouteCollectionBuilder.php 3d5201b28c Initial commit 11 months ago
RouteCompiler.php 3d5201b28c Initial commit 11 months ago
RouteCompilerInterface.php 3d5201b28c Initial commit 11 months ago
Router.php 3d5201b28c Initial commit 11 months ago
RouterInterface.php 3d5201b28c Initial commit 11 months ago
composer.json 3d5201b28c Initial commit 11 months ago

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'

Resources