d699a929e0
* 2.2: (70 commits) change wrapped exception message to be more usefull updated VERSION for 2.0.23 update CONTRIBUTORS for 2.0.23 updated CHANGELOG for 2.0.23 [Form] fixed failing test [DomCrawler] added support for query string with slash Fixed invalid file path for hiddeninput.exe on Windows. fix xsd definition for strict-requirements [WebProfilerBundle] Fixed the toolbar styles to apply them in IE8 [ClassLoader] fixed heredocs handling fixed handling of heredocs Add a public modifier to an interface method removing xdebug extension [HttpRequest] fixes Request::getLanguages() bug [HttpCache] added a test (cached content should be kept after purging) [DoctrineBridge] Fixed non-utf-8 recognition [Security] fixed HttpUtils class tests replaced new occurences of 'Request::create()' with '::create()' changed sub-requests creation to '::create()' fixed merge issue ... Conflicts: src/Symfony/Bundle/FrameworkBundle/Command/TranslationUpdateCommand.php src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar.html.twig src/Symfony/Component/DomCrawler/Link.php src/Symfony/Component/Translation/Translator.php |
||
---|---|---|
.. | ||
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.phar install --dev
$ phpunit