(Yaf >=1.0.0)
Yaf_Router::addRoute — 新增路由至路由器
預設情況下,Yaf_Router 使用 Yaf_Route_Static 作為其預設路由。您可以透過呼叫此方法將新的路由新增到路由器的路由堆疊中。
較新的路由會在較舊的路由(路由堆疊)之前被呼叫,如果較新的路由器返回 true
,路由器處理程序將會結束。否則,將會呼叫較舊的路由器。
此函式沒有參數。
範例 #1 Yaf_Dispatcher::autoRender() 範例
<?php
class Bootstrap extends Yaf_Bootstrap_Abstract{
public function _initConfig() {
$config = Yaf_Application::app()->getConfig();
Yaf_Registry::set("config", $config);
}
public function _initRoute(Yaf_Dispatcher $dispatcher) {
$router = $dispatcher->getRouter();
/**
* 我們可以在 application.ini 中新增一些預先定義的路由
*/
$router->addConfig(Yaf_Registry::get("config")->routes);
/**
* 新增一個 Rewrite 路由,則對於請求 URI:
* http://example.com/product/list/22/foo
* 將會被此路由匹配,結果如下:
*
* [module] =>
* [controller] => product
* [action] => info
* [method] => GET
* [params:protected] => 陣列
* (
* [id] => 22
* [name] => foo
* )
*
*/
$route = new Yaf_Route_Rewrite(
"/product/list/:id/:name",
array(
"controller" => "product",
"action" => "info",
)
);
$router->addRoute('dummy', $route);
}
}
?>