注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

phperwuhan的博客

记载一个phper的历程!phperwuhan.blog.163.com

 
 
 

日志

 
 

URL路由之PATH_INFO  

2010-05-17 10:27:50|  分类: php |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

来源:http://bbs.phphubei.com/thread-13260-1-1.html

在PHP中实现URL路由的 可以用到两个

$_SERVER["REQUEST_URI"];

$_SERVER['PATH_INFO'];

其中$_SERVER["REQUEST_URI"];数组变量存储的是此所需的 URI

通俗的说$_SERVER["REQUEST_URI"];取得的是 除去域名外。从域名的反斜杠开始一直到网址最后部分的

例如:

uri/2.包含如下

<?
$path= $_SERVER["REQUEST_URI"];
print_r($path);
?>

我们通过下面的地址访问。

http://localhost/uri/2.php/index/hello?a=1

得到的输出为: /uri/2.php/index/hello?a=1

如果通过rewrite 把2.php屏蔽掉。则通过http://localhost/uri/index/hello?a=1 方式访问2.php 则得到如下输出

/uri/index/hello?a=1

下面再说说$_SERVER['PATH_INFO']

$_SERVER['PATH_INFO'] 我在手册上没看到介绍,在网上也没找到相关资料。通过实验得出 $_SERVER['PATH_INFO'] 的作用为:本执行文件名后面的路径及信息

同样举个例子

在uri下 建立2.php文件 代码如下

<?
$path= $_SERVER['PATH_INFO'];
print_r($path);
?>

通过http://localhost/uri/2.php/index/hello?a=1 访问得到如下输出

/index/hello   这里 没有?a=1

通过rewrite屏蔽掉2.php 通过http://localhost/uri/index/hello?a=1 访问得到的输出为空白的

也就是说$_SERVER['PATH_INFO'] 在rewrite下失去作用了。

  评论这张
 
阅读(943)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017