<code> $router->addRoute('html', new Yaf_Route_Regex('/([a-z]+)\.html$/', array('controller' => 'Index', 'action' => 'html'), array(1 => 'page'))); $router->addRoute('security', new Yaf_Route_Rewrite('security/:name/:rout', array('controller' => 'Security', 'action' => 'html'))); $router->addRoute('trade', new Yaf_Route_Rewrite('trade/:name/:rout', array('controller' => 'Trade', 'action' => 'html'))); </code>
Frage 1: Ist der erste Parameter von addRoute der Name der später hinzugefügten Route?
Frage 2: Yaf_Route_Regex('/([a-z] ).html$/', array('controller' => 'Index', 'action' => 'html'), array(1 => 'Seite')))
Was stellen die drei Parameter dar? Wie ist diese Route zu verstehen (d. h. wie werden die drei Parameter koordiniert)?
Frage 3: Yaf_Route_Rewrite('security/:name/:rout', array('controller' => 'Security', 'action' => 'html')))
Die drei Parameter repräsentieren jeweils Was (besonders das erste, ich drücke meine Verwirrung nachdrücklich aus...)? Wie ist diese Route zu verstehen (d. h. wie werden die drei Parameter koordiniert)?
<code> $router->addRoute('html', new Yaf_Route_Regex('/([a-z]+)\.html$/', array('controller' => 'Index', 'action' => 'html'), array(1 => 'page'))); $router->addRoute('security', new Yaf_Route_Rewrite('security/:name/:rout', array('controller' => 'Security', 'action' => 'html'))); $router->addRoute('trade', new Yaf_Route_Rewrite('trade/:name/:rout', array('controller' => 'Trade', 'action' => 'html'))); </code>
Frage 1: Ist der erste Parameter von addRoute der Name der später hinzugefügten Route?
Frage 2: Yaf_Route_Regex('/([a-z] ).html$/', array('controller' => 'Index', 'action' => 'html'), array(1 => 'Seite')))
Was stellen die drei Parameter dar? Wie ist diese Route zu verstehen (d. h. wie werden die drei Parameter koordiniert)?
Frage 3: Yaf_Route_Rewrite('security/:name/:rout', array('controller' => 'Security', 'action' => 'html')))
Die drei Parameter repräsentieren jeweils Was (besonders das erste, ich drücke meine Verwirrung nachdrücklich aus...)? Wie ist diese Route zu verstehen (d. h. wie werden die drei Parameter koordiniert)?
Parameter 1 entspricht dem URI-Teil in der Anforderungsadresse. Beispiel: http://www.baidu.com/mobile
, dann ist diese URI mobil, was dem ersten Parameter der Route entspricht, die Sie geschrieben haben.
Parameter 2 ist ein Array, der dem Controller entsprechende Wert ist der Controller und die Aktion ist die entsprechende Methode.
Parameter 3, der ebenfalls ein Array ist, ist der Parameter, den die Anfrage mitbringt, zum Beispiel, um welche Seite es sich handelt usw.
Sie können Bruder Niao, einem der Hauptentwickler des YAF-Frameworks, eine E-Mail senden.
Frage 1
<code> $route = new Yaf_Route_Rewrite( "/product/list/:id/", array( "controller" => "product", "action" => "info", ) ); $router->addRoute('dummy', $route);</code>
Wenn Sie es so hinzufügen, spielt der Name keine Rolle,
Wenn Sie
in ini hinzufügen<code>[routes] routes.product.type='regex' routes.product.match='#^/([0-9]+)[\/]?$#' routes.product.route.module='Product' routes.product.route.controller='product' routes.product.route.action='show' routes.product.map.1='pid'</code>
Dazu ist das Lesen der Konfiguration und das anschließende Initialisieren der Route erforderlich.
Tatsächlich kann sich der Name auf die 5 Routing-Wege beziehen. Einfache Supervar-Statik [Standard]-Map rewirte regex
Frage 2, Frage 3 Ich denke, Sie kennen die Antwort bereits
Das ist seltsam, hast du das Handbuch nicht gelesen?
8.5. Detaillierte Erläuterung der Routing-Protokolle