ThinkPHP5.0
的路由比较灵活,并且不需要强制定义,可以总结归纳为如下三种方式:
一、普通模式
关闭路由,完全使用默认的PATH_INFO
方式URL:
'url_route_on' => false,
路由关闭后,不会解析任何路由规则,采用默认的PATH_INFO
模式访问URL:
http://serverName/index.php/module/controller/action/param/value/...
但仍然可以通过操作方法的参数绑定、空控制器和空操作等特性实现URL地址的简化。
可以设置url_param_type
配置参数来改变pathinfo模式下面的参数获取方式,默认是按名称成对解析,支持按照顺序解析变量,只需要更改为:
// 按照顺序解析变量
'url_param_type' => 1,
二、混合模式
开启路由,并使用路由定义+默认PATH_INFO
方式的混合:
'url_route_on' => true,
'url_route_must'=> false,
该方式下面,只需要对需要定义路由规则的访问地址定义路由规则,其它的仍然按照第一种普通模式的PATH_INFO
模式访问URL。
三、强制模式
开启路由,并设置必须定义路由才能访问:
'url_route_on' => true,
'url_route_must' => true,
这种方式下面必须严格给每一个访问地址定义路由规则(包括首页),否则将抛出异常。
首页的路由规则采用/
定义即可,例如下面把网站首页路由输出Hello,world!
Route::get('/',function(){
return 'Hello,world!';
});