Die Routing-Komponente wandelt die HTTP-Anfrage in eine Reihe von Konfigurationsparametern um.
Installation
Sie haben zwei Möglichkeiten, diese Komponente zu installieren:
<code>通过 Composer (symfony/routing on Packagist); 使用官方的 Git repository (https://github.com/symfony/Routing)。 </code>
Dann muss Composer die Datei „vendor/autoload.php“ für den Autoloading-Mechanismus bereitstellen. Andernfalls wird Ihre Anwendung diese Komponente nicht finden.
Verwendung
Sie benötigen die folgenden drei Teile, um ein grundlegendes Routing-System einzurichten:
Hier ist ein einfaches Beispiel. Hier müssen Sie sicherstellen, dass Ihr Autoloader diese Komponente geladen hat:
<code><span>use</span><span>Symfony</span>\<span>Component</span>\<span>Routing</span>\<span>Matcher</span>\<span>UrlMatcher</span>; <span>use</span><span>Symfony</span>\<span>Component</span>\<span>Routing</span>\<span>RequestContext</span>; <span>use</span><span>Symfony</span>\<span>Component</span>\<span>Routing</span>\<span>RouteCollection</span>; <span>use</span><span>Symfony</span>\<span>Component</span>\<span>Routing</span>\<span>Route</span>; <span>$route</span> = <span>new</span> Route(<span>'/foo'</span>, <span>array</span>(<span>'controller'</span> => <span>'MyController'</span>)); <span>$routes</span> = <span>new</span> RouteCollection(); <span>$routes</span>->add(<span>'route_name'</span>, <span>$route</span>); <span>$context</span> = <span>new</span> RequestContext(<span>$_SERVER</span>[<span>'REQUEST_URI'</span>]); <span>$matcher</span> = <span>new</span> UrlMatcher(<span>$routes</span>, <span>$context</span>); <span>$parameters</span> = <span>$matcher</span>->match(<span>'/foo'</span>); <span>// array('controller' => 'MyController', '_route' => 'route_name')</span></code>
Es ist zu beachten, dass bei Verwendung von $_SERVER[‘REQUEST_URI’] beliebige Parameter in die URL aufgenommen werden können. Eine einfache Lösung ist die Verwendung der HttpFoundation-Komponente, die im Folgenden erläutert wird.
Fortsetzung folgt
Originallink:
http://symfony.com/doc/current/components/routing/introduction.html
Das Obige hat die Symfony-Routing-Komponente (The Routing Component) vorgestellt, einschließlich ihrer Aspekte. Ich hoffe, dass sie für Freunde, die sich für PHP-Tutorials interessieren, hilfreich sein wird.