Maison > Article > développement back-end > Récapitulatif et partage de l'utilisation de $_SERVER en PHP
'PHP_SELF'
:当前执行脚本的文件名,与 document root 有关。例如,在地址为 http://example.com/foo/bar.php
的脚本中使用 $_SERVER['PHP_SELF']
将得到 /foo/bar.php
。 'SCRIPT_NAME'
:包含当前脚本的路径。这在页面需要指向自己时非常有用。
echo '$_SERVER["PHP_SELF"] 输出:'.$_SERVER['PHP_SELF'];echo "<br/>";echo "<br/>";echo '$_SERVER["SCRIPT_NAME"] 输出:'.$_SERVER['SCRIPT_NAME'];
当链接参数不使用路径方式时$_SERVER['PHP_SELF']
和 $_SERVER['SCRIPT_NAME']
一样
当链接参数使用路径方式时$_SERVER['PHP_SELF']
和 $_SERVER['SCRIPT_NAME']
不一样
'SCRIPT_FILENAME'
:当前执行脚本的绝对路径。包含__FILE__
这个常量的文件的完整路径和文件名。
当
$_['SCRIPT_FILENAME']
和__FILE__
在同一个脚本内的话,值一样,当在require 或 include 包含文件下时,值不一样
echo "\$_SERVER['SCRIPT_FILENAME']的输出:".$_SERVER['SCRIPT_FILENAME'];echo "<br/>";echo "<br/>";echo "__FILE__的输出:".__FILE__;
'SERVER_ADDR'
:当前运行脚本所在的服务器的 IP 地址。 'REMOTE_ADDR'
:浏览当前页面的用户的 IP 地址。
'SERVER_NAME'
:当前运行脚本所在的服务器的主机名。如果脚本运行于虚拟主机中,该名称是由那个虚拟主机所设置的值决定。
Note: 在 Apache 2 里,必须设置 UseCanonicalName = On 和 ServerName。 否则该值会由客户端提供,就有可能被伪造。 上下文有安全性要求的环境里,不应该依赖此值。
'SERVER_PORT'
:Web 服务器使用的端口。默认值为 “80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。 'DOCUMENT_ROOT'
:当前运行脚本所在的文档根目录。在服务器配置文件中定义:例如:C:/Users/Administrator/Desktop/test
。
'SERVER_PROTOCOL'
:请求页面时通信协议的名称和版本。例如,HTTP/1.0
。 'REQUEST_METHOD'
:访问页面使用的请求方法;例如,“GET”, “HEAD”,“POST”,“PUT”
Note:如果请求方法为
HEAD
,PHP 脚本将在发送Header
头信息之后终止(这意味着在产生任何输出后,不再有输出缓冲)。
'HTTP_HOST'
:当前请求头中 Host: 项的内容,如果存在的话。 'HTTP_REFERER'
:引导用户代理到当前页的前一页的地址(如果存在)。由 user agent 设置决定。并不是所有的用户代理都会设置该项,有的还提供了修改 HTTP_REFERER
的功能。简言之,该值并不可信。 'HTTP_USER_AGENT'
:当前请求头中 User-Agent
: 项的内容,如果存在的话。该字符串表明了访问该页面的用户代理的信息。一个典型的例子是:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)
。除此之外,你可以通过 get_browser()
来使用该值,从而定制页面输出以便适应用户代理的性能。 'REQUEST_URI'
:URI 用来指定要访问的页面。例如 “/index.html”。
'PHP_SELF'
:当前执行脚本的文件名,与 document root 有关。例如,在地址为 http://example.com/foo/bar.php
的脚本中使用 $_SERVER['PHP_SELF']
将得到 /foo/bar.php
。 'SCRIPT_NAME'
:包含当前脚本的路径。这在页面需要指向自己时非常有用。
echo '$_SERVER["PHP_SELF"] 输出:'.$_SERVER['PHP_SELF'];echo "<br/>";echo "<br/>";echo '$_SERVER["SCRIPT_NAME"] 输出:'.$_SERVER['SCRIPT_NAME'];
当链接参数不使用路径方式时$_SERVER['PHP_SELF']
和 $_SERVER['SCRIPT_NAME']
一样
当链接参数使用路径方式时$_SERVER['PHP_SELF']
和 $_SERVER['SCRIPT_NAME']
不一样
'SCRIPT_FILENAME'
:当前执行脚本的绝对路径。包含__FILE__
这个常量的文件的完整路径和文件名。
当
$_['SCRIPT_FILENAME']
和__FILE__
在同一个脚本内的话,值一样,当在require 或 include 包含文件下时,值不一样
echo "\$_SERVER['SCRIPT_FILENAME']的输出:".$_SERVER['SCRIPT_FILENAME'];echo "<br/>";echo "<br/>";echo "__FILE__的输出:".__FILE__;
'SERVER_ADDR'
:当前运行脚本所在的服务器的 IP 地址。 'REMOTE_ADDR'
:浏览当前页面的用户的 IP 地址。
'SERVER_NAME'
:当前运行脚本所在的服务器的主机名。如果脚本运行于虚拟主机中,该名称是由那个虚拟主机所设置的值决定。
Note: 在 Apache 2 里,必须设置 UseCanonicalName = On 和 ServerName。 否则该值会由客户端提供,就有可能被伪造。 上下文有安全性要求的环境里,不应该依赖此值。
'SERVER_PORT'
:Web 服务器使用的端口。默认值为 “80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。 'DOCUMENT_ROOT'
:当前运行脚本所在的文档根目录。在服务器配置文件中定义:例如:C:/Users/Administrator/Desktop/test
。
'SERVER_PROTOCOL'
:请求页面时通信协议的名称和版本。例如,HTTP/1.0
。 'REQUEST_METHOD'
:访问页面使用的请求方法;例如,“GET”, “HEAD”,“POST”,“PUT”
Note:如果请求方法为
HEAD
,PHP 脚本将在发送Header
头信息之后终止(这意味着在产生任何输出后,不再有输出缓冲)。
'HTTP_HOST'
:当前请求头中 Host: 项的内容,如果存在的话。 'HTTP_REFERER'
:引导用户代理到当前页的前一页的地址(如果存在)。由 user agent 设置决定。并不是所有的用户代理都会设置该项,有的还提供了修改 HTTP_REFERER
的功能。简言之,该值并不可信。 'HTTP_USER_AGENT'
:当前请求头中 User-Agent
: 项的内容,如果存在的话。该字符串表明了访问该页面的用户代理的信息。一个典型的例子是:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)
。除此之外,你可以通过 get_browser()
来使用该值,从而定制页面输出以便适应用户代理的性能。 'REQUEST_URI'
:URI 用来指定要访问的页面。例如 “/index.html”。
相关推荐:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!