PHP_SELF、 SCRIPT_NAME、 REQUEST_URI区别

转载 2015年07月10日 09:41:15


$_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 $_SERVER["QUERY_STRING"]、$_SERVER["REQUEST_URI"]、$_SERVER["SCRIPT_NAME"]和$_SERVER["PHP_SELF"]

本文作者:林子木,wolinxuebin 转载请保留:http://blog.csdn.net/wolinxuebin 导读:本文分两部分,第一部分转自一篇文章,第二部分是作者在转...

$_SERVER详解($_SERVER[PHP_SELF],$_SERVER[SCRIPT_NAME],$_SERVER['REQUEST_URI']与HTTP_HOST和SERVER_NAM的区别)

$_SERVER详解($_SERVER[PHP_SELF],$_SERVER[SCRIPT_NAME],$_SERVER['REQUEST_URI']与HTTP_HOST和SERVER_NAM的区别)...

PHP获取当前url路径的函数及服务器变量:QUERY_STRING、REQUEST_URI、SCRIPT...

1,$_SERVER["QUERY_STRING"]说明:查询(query)的字符串2,$_SERVER["REQUEST_URI"]说明:访问此页面所需的URI3,$_SERVER["SCRIPT_...

No mapping found for HTTP request with URI [/xxx] in DispatcherServlet with name 'despatcherServlet'

遇到这个问题总结一下: 1. springmvc的配置文件没有被加载,所以这里特别说明一下,如果您使用的是maven项目,并且在web.xml文件中配置的springmvc配置文件在classpath...

关于警告: No mapping found for HTTP request with URI [/spMVC/] in DispatcherServlet with name 'spMVC'的问题

spring-mvc.xml

No mapping found for HTTP request with URI [/prjName/contro] in DispatcherServlet with name 'spring'

问题描述: 先说下开发环境和jar包 用的是eclipse : Neon.1a Release , JAVA JDK1.8,JAR包:spring-xxxx.4.3  spring-servlet...

nginx的location定义正则后SCRIPT_NAME, PATH_INFO多了index.php

在使用nginx进行 反向代理配置时通过正则表达式配置location后发现 通过$_SERVER['SCRIPT_NAME']; 与$_SERVER['PATH_INFO'] 发现直接获取了整个u...

实例详解$_SERVER函数中QUERY_STRING和REQUEST_URI等四个变量区别

实例详解$_SERVER函数中QUERY_STRING和REQUEST_URI等四个变量区别 实例详解$_SERVER函数中QUERY_STRING和REQUEST_URI等四个变量区别     ...

实例详解$_SERVER函数中QUERY_STRING和REQUEST_URI等四个变量区别

$_SERVER存储当前服务器信息,其中有几个值如$_SERVER["QUERY_STRING"],$_SERVER["REQUEST_URI"],$_SERVER["SCRIPT_NAME"]和$_...

PHP中new static()与new self()的区别异同分析

问题的起因是本地搭建一个站。发现用PHP 5.2 搭建不起来,站PHP代码里面有很多5.3以上的部分,要求更改在5.2下能运行。 改着改着发现了一个地方 return new static($val)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP_SELF、 SCRIPT_NAME、 REQUEST_URI区别
举报原因:
原因补充:

(最多只允许输入30个字)