博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tp的路由器功能1
阅读量:6271 次
发布时间:2019-06-22

本文共 1490 字,大约阅读时间需要 4 分钟。

ThinkPHP URL 路由功能详解与实例

本文介绍TP路由功能和U方法使用,分为下面几个部分:

1.Tp URL 路由功能详解:
2.TP 正则路由与实例
3.TP U方法:使用U方法自动生成URL超链接

TP3.0版本的路由功能较2.x版本有较大的变更,

1.2.0URL路由
2.TP 泛路由使用详解
3.TP 2.1 路由规则对比2.0变更
4.TP的U方法使用路由功能(bug)与解决方法(2.0版本适用)

TP URL 路由简介

简单的说,URL路由就是允许你在一定规则下定制你需要的URL样子,以达到美化URL,提高用户体验,也有益于搜索收录.

例子:http://www.51idev.com/index.php/Product/Show/category/5/id/23

该URL的本意是显示第五类中id为123的产品.经过URL路由改写为URL可以写为:
http://www.5idev.com/index.php/product/5/123
如果使用.htaccess文件的Rewrite规则把入口文件隐藏,则上面的URL可以进一步简化为:
http://ww.51dev.com/product/5/123
这个URL地址就相对比较简单容易.
当然使用到Apache的URL Rewrite规则也能达到URL定制的功能,在此就不展开了!

TP URL路由配置

在TP中使用URL路由功能,需要如下配置:
在项目配置文件中Conf/config.php里面开启路由功能(设置为true)
'URL_ROUTER_ON' => true,

路由规则定义:

和2.0版本的不同是,3.0的路由规则定义于项目配置文件config.php内,格式为数组格式,具体定义规则为规则路由和正则路由.规则语法如下:
1. '路由规则'=>'[分组/模块/操作]?额外参数1=值1&额外参数2=值2..'
2.'路由规则'=>array['分组/模块/操作]'],'额外参数1=值2&额外参数2=值2...'
3.'路由规则'=>'外部地址'
4.'路由规则'=>array('外部地址','重定向代码')

语法规则:

1.路由规则即是我们要在URL中显示出来规则,后面元素值部分是实际的URL地址以及参数
2.路由规则中如果以:开头,表示动态变量,否则为静态地址
3.格式2的额外参数可以传入数组或者字符集
4.路由规则支持变量的数字约束定义,如'product/:id\d'=>'Product/Show'
5.路由规则非数字变量支持排除,例如'news/cate^add|edit|delete'=>'News/category/'
6.路由规则支持完整匹配定义,例如'product/:id\d$'=>'Product/Show'
7.路由规则中的静态地址不区分大小写
8.外部地址中如果要引用动态变量,采用:1 :2 定义
9.规则路由可以支持 全动态和动静态结合定义 例如':user/blog/:id'=>'Home/Blog/user'

TP URL 路由实例

以本文的例子为首,看该路由是如何定义的.在项目配置文件,Conf/config.php里定义如下规则:
'URL_ROUTE_RULES'=>array(
'product/:category\d:id\d'=>'Product/Show',//规则路由
);

转载于:https://www.cnblogs.com/sgsheg/archive/2012/09/07/2675010.html

你可能感兴趣的文章
如何对抗硬件断点--- 调试寄存器
查看>>
mybatis学习
查看>>
从不同层面看cocos2d-x
查看>>
Struts2技术详解
查看>>
MFC应用程序向导生成的文件
查看>>
Oracle体系结构之oracle密码文件管理
查看>>
【leetcode】Remove Element (easy)
查看>>
mysql多表查询及其 group by 组内排序
查看>>
alsa的snd_pcm_readi()函数和snd_pcm_writei()
查看>>
Android学习网站推荐(转)
查看>>
嵌入式根文件系统的移植和制作详解
查看>>
MEF部件的生命周期(PartCreationPolicy)
查看>>
LCD的接口类型详解
查看>>
nginx 基础文档
查看>>
LintCode: Unique Characters
查看>>
Jackson序列化和反序列化Json数据完整示例
查看>>
.net 中的DllImport
查看>>
nyoj 517 最小公倍数 【java睑板】
查看>>
include与jsp:include区别
查看>>
ftp的20 21端口和主动被动模式
查看>>