路由是在pathinfo模式下进行配置的,在应用或模块配置中开启路由
‘URL_ROUTER_ON’=>true
然后在模块配置文件就可以进行路由的设置了,手册中给的实例:
路由定义就像示例中的一样: '路由表达式'=>'路由地址和传入的参数'或者array
规则路由
分为静态地址、动态地址、动静结合。
‘blog’=>'Blog/read' 静态地址
'blog/:id'=>'blog/read/1' 动态和静态结合
':user/:id'=>'blog/read'动态地址
数字约束
'blog/:id\d'=>'Blog/read' 要求输入的id必须为整数
函数支持
'blog/:id\d|md5'=>'Blog/read' 传入的为加密后的id ====> md5(id)
可选参数
'blog/:year\d/[:month\d]'=>'Blog/read' 此时的month为可传参数,但是传入的时候必须为整数
规则排除 ^
'blog/:action^read'=>'Blog/read' 匹配了除了read之外的字符串
完全匹配
‘blog/:action$’ => 'Blog/read' 这样就会匹配到参数为止,后面的都不匹配
http://localhost/index.php/Home/Blog/read 匹配 成功
http://localhost/index.php/Home/Blog/read/2 匹配 失败
闭包支持
'blog/read'=>function(){ echo "HELLO WORLD"; }