泛路由规则中需要使用PHP正则表达式来对路由进行匹配,具体语法规则如下:
return array( // 泛路由 'RouteName@'=>array( array('路由匹配正则', '模块名称', '操作名称', '参数定义', '额外参数'), ), )提示
如果您使用的是 ThinkPHP 2.1RC 及更高版本,请同时参阅《ThinkPHP 2.1 版本 URL 路由规则对比 2.0 版本的变更》。
以本文开始的例子为例,泛路由配置如下:
return array( // 泛路由 'product@'=>array( array('/^\/(\d+)$/', 'Products', 'show', 'product_id'), array('/^\/(\d+)\/(\d+)$/', 'Products', 'archive','year,month'), ), )
泛路由规则中,使用正则表达式来匹配 URL 地址中路由名后边的字串,如下红色部分:
http://www.520mg.com/index.php/product/2010/10
其他参数上的使用和常规路由的使用一致。