### 路由 路由配置定义在`protected/conf/config.inc.php`文件的`$GLOBALS['rewrite']`全局变量。 ###### 不带参数配置 ```php $GLOBALS['rewrite'] = [ '404.html' => 'default/notFound', 'robots.txt' => 'default/robots', ]; ``` 对应的接收方法 ```php // DefaultController public function actionRobots($args) { // code } ``` ###### 带参数配置 支持`<参数名>`,`<参数名:正则表达式>`的写法 ```php $GLOBALS['rewrite'] = [ 'up_/.html' => 'play/commentary', ]; ``` 对应的接收方法 ```php // PlayController public function actionCommentary($args) { $rules = [ 'commentaryId' => ['int', 'desc' => '解说id'], 'upId' => ['int', 'desc' => 'UP主id'], ]; Param::checkParam2($rules, $args); } ``` --- ##### url\(\) 函数 url函数可以理解为路由的反向处理,通过给定`控制器/方法`和对应的参数生成对应的url。 考虑到路由规则的修改,域名调整的问题,不建议硬编码url,而使用url函数生成。 以上面`play/commentary`为例 ```php url('play/commentary', ['upId' => 1, 'commentaryId' => 100]); // output: // http://HOST/up_1/100.html ```