352d8954e9
* 2.8: [travis] Build standalone phpunit without symfony/yaml Clean wrong whitespaces [travis] Build phpunit with local components [Console] Handle false return value from readline do not remove space between attributes [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate() Allow to define Enum nodes with 1 single element Fix "[Form] Add flexibility for EntityType" Remove the duplicated rendering of deprecation messages in the profiler Fix the retrieval of the default value for variadic arguments Annotated routes with a variadic parameter [Locale] Fix Intl requirement Fixing DbalSessionHandler to work with a Oracle "limitation" or bug? Update EngineInterface.php [Form] Add flexibility for EntityType [Console] Fix Symfony coding standards violations [Console] Use readline for user input when available Better Iban Validation Added a way to define the priority of service decoration let Travis builds fail when PHP 7 jobs fail Conflicts: .travis.yml UPGRADE-2.8.md src/Symfony/Bundle/SecurityBundle/composer.json src/Symfony/Bundle/TwigBundle/composer.json src/Symfony/Component/Locale/composer.json |
||
---|---|---|
.. | ||
Annotation | ||
Exception | ||
Generator | ||
Loader | ||
Matcher | ||
Tests | ||
.gitignore | ||
CHANGELOG.md | ||
CompiledRoute.php | ||
composer.json | ||
LICENSE | ||
phpunit.xml.dist | ||
README.md | ||
RequestContext.php | ||
RequestContextAwareInterface.php | ||
Route.php | ||
RouteCollection.php | ||
RouteCompiler.php | ||
RouteCompilerInterface.php | ||
Router.php | ||
RouterInterface.php |
Routing Component
Routing associates a request with the code that will convert it to a response.
The example below demonstrates how you can set up a fully working routing system:
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Matcher\UrlMatcher;
use Symfony\Component\Routing\RequestContext;
use Symfony\Component\Routing\RouteCollection;
use Symfony\Component\Routing\Route;
$routes = new RouteCollection();
$routes->add('hello', new Route('/hello', array('controller' => 'foo')));
$context = new RequestContext();
// this is optional and can be done without a Request instance
$context->fromRequest(Request::createFromGlobals());
$matcher = new UrlMatcher($routes, $context);
$parameters = $matcher->match('/hello');
Resources
You can run the unit tests with the following command:
$ cd path/to/Symfony/Component/Routing/
$ composer install
$ phpunit