首页 >php框架 >ThinkPHP > 正文

thinkphp框架路由的定义与使用

原创2019-08-12 17:56:0104805

thinkphp框架路由的定义与使用

ThinkPHP框架具体强大的路由定义功能,基本上能满足网站路由的所有要求,包括规则路由、正则路由、静态路由,还对路由的闭包支持。

下面介绍ThinkPHP框架路由的定义与使用。

路由的定义

启用路由。ThinkPHP路由配置生效需要满足三个条件:

(1)在配置文件中开启路由功能,如下图1;

(2)URL支持PATH_INFO模式或者兼容URL模式;

(3)配置文件中使用URL_ROUTE_RULES参数进行配置,如下图2。

836df03abf78120741991d9ec18ce83.png

路由定义格式。定义的格式有两种:

(1) '路由表达式'=>'路由地址和传入参数;

(2)array('路由表达式','路由地址','传入参数')。

b18b3d450eaaa57384cd0af4336558c.png

路由参数配置。这些参数的作用是限制定义的路由规则的生效条件,主要有三种作用,分别是限制URL后缀、限制请求类型、自定义检测。

33a81286c74ac72481dbf9be7116e9c.png

路由的使用

规则路由。规则路由表达式包含静态地址和动态地址,或者两种地址的结合,如下图。

注释:每个参数中以“:”开头的参数都表示动态参数。例如:id表示该处匹配到的参数可以使用$_GET['id']方式获得,:year、 :month 、:day 则分别对应$_GET['year']、 $_GET['month'] 和 $_GET['day']。

cb47ee617dbc53923abfd855e459c6b.png

正则路由,必须以“/”开头,表达式不但支持正则的定义,而且还支持函数过滤处理。

3ef6fdecdd2c7b9db664cbee24519e3.png

静态路由,表达式中路由的定义不包含动态参数,执行效率高,但作用有限。静态路由的格式为:[控制器/操作?]参数1=值1&参数2=值2。

注意:为了不影响动态路由的遍历效率,静态路由采用URL_MAP_RULES定义和动态路由区分开来。

0093b39b7d09c69def10ce5d4257d0c.png

使用闭包的方式定义路由。这种方式不需要执行控制器的操作方法,如下图。

496ebab77abbf1d4db8f0985d727d90.png

本文来自ThinkPHP框架技术文章栏目://m.sbmmt.com/phpkj/thinkphp/

以上就是thinkphp框架路由的定义与使用的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:thinkphp路由
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • ThinkPHP基础实战视频教程ThinkPHP基础实战视频教程
  • ThinkPHP5基础视频教程ThinkPHP5基础视频教程
  • ThinkPHP6.0极速入门(视频教程)ThinkPHP6.0极速入门(视频教程)
  • ThinkPHP6.0公益直播课ThinkPHP6.0公益直播课
  • 视频教程分类