首页 > 代码库 > thinkphp3.2路由美化,url简化
thinkphp3.2路由美化,url简化
thinkphp的路由功能很实用也很强大,可以简化url,有强大的正则匹配,可以做成任何想要的url样式。
在前台的config.php配置文件中:
1.首先开启路由
1 | ‘URL_ROUTER_ON‘ => true, |
2.配置路由规则了,使用URL_ROUTE_RULES参数进行配置,格式为数组。
1 2 3 4 5 | ‘URL_ROUTE_RULES‘ => array ( ‘news/:year/:month/:day‘ => array ( ‘News/archive‘ , ‘status=1‘ ), ‘news/:id‘ => ‘News/read‘ , ‘/^new\/(\d{4})\/(\d{2})$/‘ => ‘News/achive?year=:1&month=:2‘ , ), |
例:
最常见的使用方法:
例如:‘news/:id‘ => ‘News/read‘,
在在地址栏中输入 域名/news/123.html 其实访问的是 域名/news/read/id/123.html
还有经常用到的对分页url的处理:
当有分页时:
1 | ‘/^list\/(.*\d)_(.*\d)$/‘ => ‘article/list?id=:1&p=:2‘ , |
最终效果:
地址栏的地址是 域名/list/123_2.html
实际访问的地址是:域名/article/list?id=123/p=2
当没有分页时匹配的是这个规则:
1 | ‘list/:id\d‘ => ‘article/list‘ , |
地址栏的地址是 域名/list/123.html
实际访问的地址是:域名/article/list/id/123.html
但是这个没有分页的路由必须放在下面,或者直接用上面的那个,只不过第一页的地址要带个 "_1"。
具体使用方法详见3.2手册“路由”章节。
thinkphp3.2路由美化,url简化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。