如何使用thinkphp路由正则表达式优化地址链接

 Thinkphp   高蒙   阅读(1771)   评论(3)   2017-03-20 10:14:10    thinkphp 路由 正则表达式 


thinkphp开发项目,其中搜索模块需要携带很多的参数,就会出现地址栏的链接很长,这样不仅看上去不美观,对于搜索引擎来说也是不友好的链接。于是,就需要将其修改成简短干练的地址链接。

thinkphp中是支持路由重写的,需要自己编写重写规则。在编写的过程中,遇到一个问题。可以说是一个老大难的问题,那就是中文,搜索关键字需要匹配中文。

在尝试各种正则匹配规则都失败的情况下,我这里只能写成?keyword=关键字的格式。

下面我们看,具体的实例:

未优化地址:

/model/search.php?style=317&order=1&isyear=0&recommend=0&bid=301&sid=327&keyword=关键字&page=1

优化地址:

/model/search-316-0-0-0-301-327-1.html?keyword=关键字

路由正则:

'/^model\/search\-(\d*)\-(\d*)\-(\d*)\-(\d*)\-(\d*)\-(\d*)\-(\d*)$/'=>'Home/Search/model?style=:1&order=:2&isyear=:3&recommend=:4&bid=:5&sid=:6&page=:7',

理想的优化:

/model/search-316-0-0-0-301-327-关键字-1.html

理想的优化地址链接未能实现,因为汉字在使用正则时,总是匹配错误,于是,我这里只能写成?keyword=关键字的格式。

thinkphp路由正则对于汉字的匹配我没有找到方法。有知道的朋友不妨给我留言。





相关文章



我要评论


站长昵称:(*)

输入内容:


评论列表


高蒙

男,程序猿一枚

 

人生要是没有理想, 那跟一条咸鱼有什么分别。


关于我

  http://www.shuchengxian.com

高蒙个人博客是以PHP技术为主的程序员个人博客。博客主要发布php开发中遇到的问题以及解决办法,同时个人博客也分享网站模板素材,jquery插件等方面素材。


站点声明:相关侵权、举报、投诉及建议等,请发E-mail:936594075#qq.com(#替换成@)。

Copyright © 2018, www.shuchengxian.com, All rights reserved. 个人博客皖公网安备 34152302000022号 皖ICP备15015490号

关键词:个人博客,PHP博客,PHP博客程序,高蒙博客,高蒙个人博客,php程序员博客,程序员个人博客