thinkphp的URL路由规则与配置实例


Posted in PHP onNovember 26, 2014

本文实例讲述了thinkphp的URL路由规则与配置方法。分享给大家供大家参考。具体分析如下:

一、URL规则

1、默认是区分大小写的

2、如果我们不想区分大小写可以改配置文件

'URL_CASE_INSENSITIVE'=>true,//url不区分大小写

3、如果模块名为 UserGroupAction,那么url找模块就必要要写成
http://localhost/thinkphp4/index.php/user_group/index

4、如果'URL_CASE_INSENSITIVE'=>false,那么url也可以写为

http://localhost/thinkphp4/index.php/UserGroup/index

二、URL伪静态

'URL_HTML_SUFFIX'=>'html|shtml|xml',//限制伪静态的后缀

三、URL路由

1、启动路由

要在配置文件中开启路由支持

'URL_ROUTER_ON'=>ture//开启路由

2、使用路由

1.规则表达式配置路由

'URL_ROUTE_RULES'=>array()//路由规则  

    'my'=>'Index/index',//静态地址路由  

    'my'=>'/Index/index',//静态地址路由,加/直接跳到网站根目录下。  

    ':id/:num'=>'Index/index',//动态地址路由,可以$_GET接收地址栏参数  

    'year/:year/:month/:date'=>'Index/index',//动态和静态混合地址路由  

    'year/:year\d/:month\d/:date\d'=>'Index/index',//动态和静态混合地址路由加上 \d代表类型只能是数字  

    'my/:id$'=>'Index/index',// 加上$说明地址中只能是 my/1000 后面不能有其他内容了

2.正则表达式配置路由,必须以/开始   /结束
'/^year\/(\d{4})\/(\d{2})\/(\d{2})/'=>'Index/index?year=:1&month=:2&date=:3'//这里\d表示必须是数字

3、注意事项:

1.越复杂的路由越往前面放

'URL_ROUTE_RULES'=>array( 

 'my/:year/:month:/:day'=>'Index/day',  

 'my/:id\d'=>'Index/index',  

 'my/:name'=>'Index/index',  

)

2.可以使用$作为完全匹配的路由规则
'URL_ROUTE_RULES'=>array(  

 'my/:id\d$'=>'Index/index',  

 'my/:name$'=>'Index/index',  

 'my/:year/:month:/:day$'=>'Index/day',  

),

3.用正则匹配的方式,以/^开始,以$/结束
'URL_ROUTE_RULES'=>array(  

 '/^my\/(\d+)$/'=>'Index/index?id=:1',  

 '/^my\/(\w+)$/'=>'Index/index?name=:1',  

 '/^my\/(\d{4})\/(\d{2})\/(\d{2})$/'=>'Index/day?year=:1&month=:2&day=:3',  

),

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
在同一窗体中使用PHP来处理多个提交任务
Oct 09 PHP
php xml留言板 xml存储数据的简单例子
Aug 24 PHP
windows下开发并编译PHP扩展的方法
Mar 18 PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-3 代码组织和重用2
Jul 03 PHP
php中OR与|| AND与&&的区别总结
Oct 26 PHP
php实现的ping端口函数实例
Nov 12 PHP
php购物车实现方法
Jan 03 PHP
php中$_POST与php://input的区别实例分析
Jan 07 PHP
简单解决新浪SAE无法上传文件的问题
May 13 PHP
使用PHPStorm+XDebug搭建单步调试环境
Nov 19 PHP
PHP删除数组中指定下标的元素方法
Feb 03 PHP
Laravel统一错误处理为JSON的方法介绍
Oct 18 PHP
thinkphp文件引用与分支结构用法实例
Nov 26 #PHP
PHP获取当前所在目录位置的方法
Nov 26 #PHP
thinkphp模板的包含与渲染实例分析
Nov 26 #PHP
PHP中strtr字符串替换用法详解
Nov 26 #PHP
thinkphp模板继承实例简述
Nov 26 #PHP
thinkphp中空模板与空模块的用法实例
Nov 26 #PHP
PHP中SimpleXML函数用法分析
Nov 26 #PHP
You might like
php轻松实现中英文混排字符串截取
2014/05/28 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
php验证码生成器
2017/05/24 PHP
laravel框架上传图片实现实时预览功能
2019/10/14 PHP
动态加载js、css等文件跨iframe实现
2014/02/24 Javascript
使用iframe window的scroll方法控制iframe页面滚动
2014/03/05 Javascript
jquery 表格排序、实时搜索表格内容(附图)
2014/05/19 Javascript
javascript监听鼠标滚轮事件浅析
2014/06/05 Javascript
深入探讨前端框架react
2015/12/09 Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
2016/08/18 Javascript
JavaScript判断浏览器及其版本信息
2017/01/20 Javascript
JavaScript中使用webuploader实现上传视频功能(demo)
2017/04/10 Javascript
JS触摸事件、手势事件详解
2017/05/04 Javascript
elemetUi 组件--el-upload实现上传Excel文件的实例
2017/10/27 Javascript
详解使用vuex进行菜单管理
2017/12/21 Javascript
通过vue-cli来学习修改Webpack多环境配置和发布问题
2017/12/22 Javascript
解决vue中使用swiper插件问题及swiper在vue中的用法
2018/04/04 Javascript
js+for循环实现字符串自动转义的代码(把后面的字符替换前面的字符)
2020/12/24 Javascript
[04:03][TI9趣味短片] 小鸽子茶话会
2019/08/20 DOTA
python之wxPython应用实例
2014/09/28 Python
python实现实时监控文件的方法
2016/08/26 Python
PyQt 线程类 QThread使用详解
2017/07/16 Python
使用Python写一个贪吃蛇游戏实例代码
2017/08/21 Python
基于Python Numpy的数组array和矩阵matrix详解
2018/04/04 Python
Python之用户输入的实例
2018/06/22 Python
Django用户认证系统 组与权限解析
2019/08/02 Python
Python为何不支持switch语句原理详解
2020/10/21 Python
使用Python通过oBIX协议访问Niagara数据的示例
2020/12/04 Python
美国购买肉、鸭、家禽、鹅肝和熟食网站:D’Artagnan
2018/11/13 全球购物
国际贸易专业推荐信
2013/11/15 职场文书
领导检查欢迎词
2014/01/14 职场文书
难忘的一天教学反思
2014/04/30 职场文书
奥林匹克运动会口号
2014/06/19 职场文书
python 自动化偷懒的四个实用操作
2021/04/11 Python
用React Native制作一个简单的游戏引擎
2021/05/27 Javascript
豆瓣2021评分最高动画剧集-豆瓣评分最高的动画剧集2021
2022/03/18 日漫