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 mssql 数据库分页SQL语句
Dec 16 PHP
php 随机排序广告的实现代码
May 09 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
Sep 07 PHP
ajax完美实现两个网页 分页功能的实例代码
Apr 16 PHP
phpize的深入理解
Jun 03 PHP
解析PHP中$_FILES的使用以及注意事项
Jul 05 PHP
显示程序执行时间php函数代码
Aug 29 PHP
PHP文件缓存smarty模板应用实例分析
Feb 26 PHP
php微信开发之上传临时素材
Jun 24 PHP
PHP模糊查询的实现方法(推荐)
Sep 06 PHP
php关联数组与索引数组及其显示方法
Mar 12 PHP
PHP进阶学习之反射基本概念与用法分析
Jun 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导入csv文件碰到乱码问题的解决方法
2014/02/10 PHP
Joomla简单判断用户是否登录的方法
2016/05/04 PHP
Nigma vs Liquid BO3 第二场2.13
2021/03/10 DOTA
javascript String 对象
2008/04/25 Javascript
利用jQuery的$.event.fix函数统一浏览器event事件处理
2009/12/21 Javascript
JavaScript对象、属性、事件手册集合方便查询
2010/07/04 Javascript
jQuery Tools tab(幻灯片)
2012/07/14 Javascript
如何获取select下拉框的值(option没有及有value属性)
2013/11/08 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
js在指定位置增加节点函数insertBefore()用法实例
2015/01/12 Javascript
javaScript中push函数用法实例分析
2015/06/08 Javascript
jQuery 3.0 的变化及使用方法
2016/02/01 Javascript
深入理解jQuery之防止冒泡事件
2016/05/24 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
vue 实现通过手机发送短信验证码注册功能
2018/04/19 Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
2018/09/21 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
2019/06/10 Javascript
javascript+css实现进度条效果
2020/03/25 Javascript
[02:47]DOTA2英雄基础教程 野性怒吼兽王
2013/12/05 DOTA
对于Python的Django框架使用的一些实用建议
2015/04/03 Python
Python with用法实例
2015/04/14 Python
Python中index()和seek()的用法(详解)
2017/04/27 Python
python版微信跳一跳游戏辅助
2018/01/11 Python
python scipy求解非线性方程的方法(fsolve/root)
2018/11/12 Python
浅谈Python小波分析库Pywavelets的一点使用心得
2019/07/09 Python
海信商城:海信电视、科龙空调、容声冰箱官方专卖
2017/02/07 全球购物
介绍java中初始化块的使用
2012/09/11 面试题
腾讯技术类校园招聘笔试试题
2014/05/06 面试题
什么是GWT的Entry Point
2013/08/16 面试题
面试后的英文感谢信
2014/02/01 职场文书
母亲节感恩寄语
2014/02/21 职场文书
优秀班主任经验交流材料
2014/06/02 职场文书
英语教师个人工作总结
2015/02/09 职场文书
PyQt5爬取12306车票信息程序的实现
2021/05/14 Python
SQL实现LeetCode(178.分数排行)
2021/08/04 MySQL
mysql中varchar类型的日期进行比较、排序等操作的实现
2021/11/17 MySQL