PHP_SELF,SCRIPT_NAME,REQUEST_URI区别


Posted in PHP onDecember 24, 2014

$_SERVER[PHP_SELF], $_SERVER[SCRIPT_NAME], $_SERVER['REQUEST_URI'] 在用法上是非常相似的,他们返回的都是与当前正在使用的页面地址有关的信息,这里列出一些相关的例子,帮助确定哪些是在你的脚本最适合的。

$_SERVER['PHP_SELF']

http://www.yoursite.com/example/ — ? — /example/index.php
http://www.yoursite.com/example/index.php — ? — /example/index.php
http://www.yoursite.com/example/index.php?a=test — ? — /example/index.php
http://www.yoursite.com/example/index.php/dir/test — ? — /dir/test

当我们使用$_SERVER['PHP_SELF']的时候,无论访问的URL地址是否有index.php,它都会自动的返回 index.php.但是如果在文件名后面再加斜线的话,就会把后面所有的内容都返回在$_SERVER['PHP_SELF']。

$_SERVER['REQUEST_URI']

http://www.yoursite.com/example/ — ? — /
http://www.yoursite.com/example/index.php — ? — /example/index.php
http://www.yoursite.com/example/index.php?a=test — ? — /example/index.php?a=test
http://www.yoursite.com/example/index.php/dir/test — ? — /example/index.php/dir/test

$_SERVER['REQUEST_URI']返回的是我们在URL里写的精确的地址,如果URL只写到”/”,就返回 “/”

$_SERVER['SCRIPT_NAME']

http://www.yoursite.com/example/ — ? — /example/index.php
http://www.yoursite.com/example/index.php — ? — /example/index.php
http://www.yoursite.com/example/index.php — ? — /example/index.php
http://www.yoursite.com/example/index.php/dir/test — ? — /example/index.php

在所有的返回中都是当前的文件名/example/index.php

PHP 相关文章推荐
PHP如何透过ODBC来存取数据库
Oct 09 PHP
php flush类输出缓冲剖析
Oct 19 PHP
纯真IP数据库的应用 IP地址转化成十进制
Jun 14 PHP
PHP iconv 解决utf-8和gb2312编码转换问题
Apr 12 PHP
php网站来路获取代码(针对搜索引擎)
Jun 08 PHP
PHP5.4中json_encode中文转码的变化小结
Jan 30 PHP
mongo Table类文件 获取MongoCursor(游标)的实现方法分析
Jul 01 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
Dec 17 PHP
PHP正则验证Email的方法
Jun 15 PHP
PHP实现生成数据字典功能示例
May 24 PHP
PHPUnit测试私有属性和方法功能示例
Jun 12 PHP
php优化查询foreach代码实例讲解
Mar 24 PHP
PHP扩展模块memcached长连接使用方法分析
Dec 24 #PHP
Yii框架在页面输出执行sql语句以方便调试的实现方法
Dec 24 #PHP
php使用pdo连接并查询sql数据库的方法
Dec 24 #PHP
php将access数据库转换到mysql数据库的方法
Dec 24 #PHP
php启用sphinx全文搜索的实现方法
Dec 24 #PHP
php中mail函数发送邮件失败的解决方法
Dec 24 #PHP
微信公众平台接口开发入门示例
Dec 24 #PHP
You might like
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
PHP获取youku视频真实flv文件地址的方法
2014/12/23 PHP
php使用ob_flush不能每隔一秒输出原理分析
2015/06/02 PHP
CI(Codeigniter)的Setting增强配置类实例
2016/01/06 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
javascript中直接引用Microsoft的COM生成Word
2014/01/20 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
js实现图片点击左右轮播
2015/07/08 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
JavaScript中的子窗口与父窗口的互相调用问题
2017/02/08 Javascript
基于vue.js轮播组件vue-awesome-swiper实现轮播图
2017/03/17 Javascript
Angular2中如何使用ngx-translate进行国际化
2017/05/21 Javascript
JavaScript 正则命名分组【推荐】
2018/06/07 Javascript
在小程序开发中使用npm的方法
2018/10/17 Javascript
面试题:react和vue的区别分析
2019/04/08 Javascript
layui数据表格 table.render 报错的解决方法
2019/09/29 Javascript
原生JS实现留言板
2020/03/26 Javascript
JS图片预加载三种实现方法解析
2020/05/08 Javascript
Python标准库06之子进程 (subprocess包) 详解
2016/12/07 Python
python使用itchat实现手机控制电脑
2018/02/22 Python
python微信公众号之关键词自动回复
2018/06/15 Python
Python实现批量修改图片格式和大小的方法【opencv库与PIL库】
2018/12/03 Python
python 提取tuple类型值中json格式的key值方法
2018/12/31 Python
pyqt5 使用cv2 显示图片,摄像头的实例
2019/06/27 Python
python 并发编程 非阻塞IO模型原理解析
2019/08/20 Python
Jmeter调用Python脚本实现参数互相传递的实现
2021/01/22 Python
英国女士和男士时尚服装网上购物:Top Labels Online
2018/03/25 全球购物
家得宝官网:The Home Depot(全球最大的家居装饰专业零售商)
2018/12/17 全球购物
Java程序员面试90题
2013/10/19 面试题
2014副局长群众路线对照检查材料思想汇报
2014/09/22 职场文书
群众路线教育实践活动方案
2014/10/31 职场文书
评先进个人材料
2014/12/29 职场文书
2015毕业生自我评价范文
2015/03/02 职场文书
2016大学军训通讯稿
2015/11/25 职场文书
四年级作文之植物
2019/09/20 职场文书