thinkphp3.2路由美化,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手册“路由”章节。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM