Symfony路由组件

Routing 组件将一个 HTTP 请求映射到一组配置变量。「The Routing component maps an HTTP request to a set of configuration variables.」

Github stars Tracking Chart

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

Overview

Name With Ownersymfony/routing
Primary LanguagePHP
Program languagePHP (Language Count: 2)
PlatformLinux, Mac, Windows
License:MIT License
Release Count596
Last Release Namev7.0.6 (Posted on 2024-04-03 06:14:25)
First Release Namev2.0.0 (Posted on 2011-07-28 11:33:43)
Created At2011-02-22 18:04:52
Pushed At2024-04-18 09:30:39
Last Commit At
Stargazers Count7.5k
Watchers Count27
Fork Count99
Commits Count2.5k
Has Issues Enabled
Issues Count0
Issue Open Count0
Pull Requests Count0
Pull Requests Open Count0
Pull Requests Close Count16
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top