<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>
Question 1: Is the first parameter of addRoute the name of the route added later?
Question 2: Yaf_Route_Regex('/([a-z]+).html$/', array('controller' => 'Index', 'action' => 'html'), array(1 => ' page')))
What do the three parameters represent? How to understand this route (that is, how to coordinate the three parameters)?
Question 3: Yaf_Route_Rewrite('security/:name/:rout', array('controller' => 'Security', 'action' => 'html')))
What do the three parameters represent (especially The first one is strongly confused.)? How to understand this route (that is, how to coordinate the three parameters)?
<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>
Question 1: Is the first parameter of addRoute the name of the route added later?
Question 2: Yaf_Route_Regex('/([a-z]+).html$/', array('controller' => 'Index', 'action' => 'html'), array(1 => ' page')))
What do the three parameters represent? How to understand this route (that is, how to coordinate the three parameters)?
Question 3: Yaf_Route_Rewrite('security/:name/:rout', array('controller' => 'Security', 'action' => 'html')))
What do the three parameters represent (especially The first one is strongly confused.)? How to understand this route (that is, how to coordinate the three parameters)?
Parameter 1, matches the URI part in the request address. For example: http://www.baidu.com/mobile
, then this uri is mobile, which corresponds to the first parameter of the route you wrote.
Parameter 2 is an array, the value corresponding to controller is the controller, and action is the corresponding method.
Parameter 3, which is also an array, is the parameter brought by the request, for example, what page is the page, etc.
You can email Brother Niao, one of the core developers of the yaf framework.
Question 1
<code> $route = new Yaf_Route_Rewrite( "/product/list/:id/", array( "controller" => "product", "action" => "info", ) ); $router->addRoute('dummy', $route);</code>
If you add it like this, the name doesn’t matter,
If added in ini
<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>
This requires reading the configuration and then initializing the route
In fact, its name can refer to the 5 ways of routing. simplle supervar static [default] map rewirte regex
Question 2 Question 3 I think you already know the answer
That’s strange. Didn’t you read the manual?
8.5. Detailed explanation of routing protocols