This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
symfony/src/Symfony/Component/Routing
2012-12-06 11:00:55 +01:00
..
Annotation fixed some phpdoc 2012-01-11 15:46:50 +01:00
Exception [Routing] added missing public @api 2011-06-14 15:40:43 +02:00
Generator Code cleanup 2012-10-22 10:37:12 -04:00
Loader Merge branch '2.0' into 2.1 2012-12-03 14:28:41 +01:00
Matcher [Routing] made it compatible with older PCRE version (pre 8) 2012-11-19 10:25:59 +01:00
Tests [Routing] made it compatible with older PCRE version (pre 8) 2012-11-19 10:25:59 +01:00
.gitattributes Fix export-ignore on Windows 2012-11-08 10:51:48 +01:00
.gitignore [Components] Tests/Autoloading fixes 2012-05-01 17:51:41 +02:00
CHANGELOG.md [Routing] Add an interface for configuring strict_parameters 2012-07-31 16:14:37 +02:00
CompiledRoute.php [Routing] removed cyclic reference Route<->CompiledRoute 2012-08-23 10:21:02 +02:00
composer.json Removed useless branch alias for dev-master in composer.json 2012-12-06 11:00:55 +01:00
LICENSE Updated LICENSE files copyright 2012-02-22 10:10:37 +01:00
phpunit.xml.dist [Components] Tests/Autoloading fixes 2012-05-01 17:51:41 +02:00
README.md [Components] Tests/Autoloading fixes 2012-05-01 17:51:41 +02:00
RequestContext.php fixed phpdoc @param alignment 2012-05-15 22:19:31 +02:00
RequestContextAwareInterface.php fixed CS 2012-07-09 14:54:20 +02:00
Route.php [Routing] removed irrelevant string cast in Route 2012-11-12 17:54:27 +01:00
RouteCollection.php tiny refactoring for consistency 2012-11-18 18:36:28 +01:00
RouteCompiler.php [Routing] made it compatible with older PCRE version (pre 8) 2012-11-19 10:25:59 +01:00
RouteCompilerInterface.php fixed CS 2012-07-09 14:54:20 +02:00
Router.php Made the router lazy when setting the context 2012-10-14 10:27:44 +02:00
RouterInterface.php fixed CS 2012-07-09 14:54:20 +02:00

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:

phpunit

If you also want to run the unit tests that depend on other Symfony Components, install dev dependencies before running PHPUnit:

php composer.phar install --dev