首页 php教程 php手册 PHP $_SERVER变量使用方法详解

PHP $_SERVER变量使用方法详解

Jun 13, 2016 am 09:51 AM
php server 下面 使用方法 全局 变量 可以 详解

PHP $_SERVER包括的变量都为全局变量了可以叫超级全局变量,下面我来给大家整理了常用的PHP $_SERVER用法详细,希望对大家有所帮助。


我常用的$_SERVER[]变量

$_SERVER['HTTP_ACCEPT_LANGUAGE']//浏览器语言  

$_SERVER['REMOTE_ADDR'] //当前用户 IP 。  

$_SERVER['REMOTE_HOST'] //当前用户主机名  

$_SERVER['REQUEST_URI'] //URL 

$_SERVER['REMOTE_PORT'] //端口。  

$_SERVER['SERVER_NAME'] //服务器主机的名称。  

$_SERVER['PHP_SELF']//正在执行脚本的文件名  

$_SERVER['argv'] //传递给该脚本的参数。  

$_SERVER['argc'] //传递给程序的命令行参数的个数。  

$_SERVER['GATEWAY_INTERFACE']//CGI 规范的版本。  

$_SERVER['SERVER_SOFTWARE'] //服务器标识的字串  

$_SERVER['SERVER_PROTOCOL'] //请求页面时通信协议的名称和版本  

$_SERVER['REQUEST_METHOD']//访问页面时的请求方法  

$_SERVER['QUERY_STRING'] //查询(query)的字符串。  

$_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在的文档根目录  

$_SERVER['HTTP_ACCEPT'] //当前请求的 Accept: 头部的内容。  

$_SERVER['HTTP_ACCEPT_CHARSET'] //当前请求的 Accept-Charset: 头部的内容。  

$_SERVER['HTTP_ACCEPT_ENCODING'] //当前请求的 Accept-Encoding: 头部的内容  

$_SERVER['HTTP_CONNECTION'] //当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。  

$_SERVER['HTTP_HOST'] //当前请求的 Host: 头部的内容。  

$_SERVER['HTTP_REFERER'] //链接到当前页面的前一页面的 URL 地址。  

$_SERVER['HTTP_USER_AGENT'] //当前请求的 User_Agent: 头部的内容。  

$_SERVER['HTTPS']//如果通过https访问,则被设为一个非空的值(on),否则返回off  

$_SERVER['SCRIPT_FILENAME'] #当前执行脚本的绝对路径名。  

$_SERVER['SERVER_ADMIN'] #管理员信息  

$_SERVER['SERVER_PORT'] #服务器所使用的端口  

$_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串。  

$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。  

$_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。这在页面需要指向自己时非常有用。  

$_SERVER['PHP_AUTH_USER'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。  

$_SERVER['PHP_AUTH_PW'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。  

$_SERVER['AUTH_TYPE'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型 


页面程序相关

•$_SERVER['PHP_SELF']:相对于网站根目录的路径及 PHP 程序名称,与 document root 相关。
•$_SERVER['HTTP_REFERER']:链接到当前页面的前一页面的 URL 地址。
•$_SERVER['SCRIPT_NAME']:相对于网站根目录的路径及 PHP 程序文件名称 。
•$_SERVER['REQUEST_URI']:访问此页面所需的 URI 。
•$_SERVER['SCRIPT_FILENAME']:当前运行 PHP 程序的绝对路径及文件名。
•$_SERVER['PATH_TRANSLATED']:当前 PHP 程序所在文件系统(不是文档根目录)的基本路径。
•$_SERVER['QUERY_STRING']:查询(query)的字符串(URL 中第一个问号 ? 之后的内容但不包括 # 后面的内容)。
•$_SERVER['argv']:传递给当前 PHP 程序的参数。
•$_SERVER['argc']:命令行模式下,包含传递给程序的命令行参数的个数。
•$_SERVER['REQUEST_TIME']:请求开始时的时间戳,从 PHP 5.1.0 起有效。
•$_SERVER['REQUEST_METHOD']:访问页面时的请求方法,例如:“GET”、“HEAD”,“POST”或“PUT”。
•$_SERVER['HTTP_ACCEPT']:当前请求的 Accept: 头信息的内容。
•$_SERVER['HTTP_ACCEPT_CHARSET']:当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。
•$_SERVER['HTTP_ACCEPT_ENCODING']:当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。
•$_SERVER['HTTP_ACCEPT_LANGUAGE']:当前请求的 Accept-Language: 头信息的内容。例如:“zh-cn”。
•$_SERVER['HTTP_CONNECTION']:当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。
•$_SERVER['HTTP_HOST']:当前请求的 Host: 头信息的内容。
•$_SERVER['HTTPS']:如果 PHP 程序是通过 HTTPS 协议被访问,则被设为一个非空的值。
•$_SERVER['PHP_AUTH_DIGEST']:当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。
•$_SERVER['PHP_AUTH_USER']:当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。
•$_SERVER['PHP_AUTH_PW']:当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。
•$_SERVER['AUTH_TYPE']:当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。

服务器端相关

•$_SERVER['DOCUMENT_ROOT']:当前运行 PHP 程序所在的文档根目录,在服务器配置文件中定义。
•$_SERVER['GATEWAY_INTERFACE']:服务器使用的 CGI 规范的版本,例如:“CGI/1.1”。
•$_SERVER['SERVER_ADDR']:当前运行 PHP 程序所在的服务器的 IP 地址。
•$_SERVER['SERVER_NAME']:当前运行 PHP 程序所在的服务器的名称。
•$_SERVER['SERVER_ADMIN']:Apache 服务器配置文件中的 SERVER_ADMIN 参数。
•$_SERVER['SERVER_PORT']:服务器所使用的端口。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。

•$_SERVER['SERVER_SIGNATURE']:包含服务器版本和虚拟主机名的字符串。
•$_SERVER['SERVER_SOFTWARE']:服务器标识的字串,在响应请求时的头信息中给出。
•$_SERVER['SERVER_PROTOCOL']:请求页面时通信协议的名称和版本,例如:“HTTP/1.0”。

其他杂项

•$_SERVER['HTTP_USER_AGENT']:当前请求的 User-Agent: 头信息的内容,该字符串表明了访问该页面的用户代理的信息。
•$_SERVER['REMOTE_ADDR']:正在浏览当前页面用户的 IP 地址。
•$_SERVER['REMOTE_HOST']:正在浏览当前页面用户的主机名。
•$_SERVER['REMOTE_PORT']:用户连接到服务器时所使用的端口。
注意,如果以命令行方式运行 PHP,上面列出的元素几乎没有有效的(或是没有任何实际意义的)。


例1

PHP获取当前url路径

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

3,$_SERVER["SCRIPT_NAME"]
说明:包含当前脚本的路径

4,$_SERVER["PHP_SELF"]
说明:当前正在执行脚本的文件名

实例:
1,http://www.bKjia.c0m/ (直接打开主页)
结果:
$_SERVER["QUERY_STRING"] = ""
$_SERVER["REQUEST_URI"] = "/"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"]     = "/index.php"

2,http://www.bKjia.c0m/?p=222 (附带查询)
结果:
$_SERVER["QUERY_STRING"] = "p=222"
$_SERVER["REQUEST_URI"] = "/?p=222"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"]     = "/index.php"

3,http://www.bKjia.c0m/index.php?p=222&q=biuuu
结果:
$_SERVER["QUERY_STRING"] = "p=222&q=biuuu"
$_SERVER["REQUEST_URI"] = "/index.php?p=222&q=biuuu"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"]     = "/index.php"

$_SERVER["QUERY_STRING"]获取查询语句,实例中可知,获取的是?后面的值
$_SERVER["REQUEST_URI"] 获取http://www.bKjia.c0m后面的值,包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:index.php
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名


当前url:"http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']


总结一下,对于QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF,深入了解将有利于我们在$_SERVER函数中正确调用这四个值。通过实例详解$_SERVER函数中QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF掌握四个变量之间的区别。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1673
14
CakePHP 教程
1429
52
Laravel 教程
1333
25
PHP教程
1278
29
C# 教程
1257
24
PHP与Python:了解差异 PHP与Python:了解差异 Apr 11, 2025 am 12:15 AM

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP:网络开发的关键语言 PHP:网络开发的关键语言 Apr 13, 2025 am 12:08 AM

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP和Python:比较两种流行的编程语言 PHP和Python:比较两种流行的编程语言 Apr 14, 2025 am 12:13 AM

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP行动:现实世界中的示例和应用程序 PHP行动:现实世界中的示例和应用程序 Apr 14, 2025 am 12:19 AM

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP的持久相关性:它还活着吗? PHP的持久相关性:它还活着吗? Apr 14, 2025 am 12:12 AM

PHP仍然具有活力,其在现代编程领域中依然占据重要地位。1)PHP的简单易学和强大社区支持使其在Web开发中广泛应用;2)其灵活性和稳定性使其在处理Web表单、数据库操作和文件处理等方面表现出色;3)PHP不断进化和优化,适用于初学者和经验丰富的开发者。

PHP和Python:解释了不同的范例 PHP和Python:解释了不同的范例 Apr 18, 2025 am 12:26 AM

PHP主要是过程式编程,但也支持面向对象编程(OOP);Python支持多种范式,包括OOP、函数式和过程式编程。PHP适合web开发,Python适用于多种应用,如数据分析和机器学习。

PHP与其他语言:比较 PHP与其他语言:比较 Apr 13, 2025 am 12:19 AM

PHP适合web开发,特别是在快速开发和处理动态内容方面表现出色,但不擅长数据科学和企业级应用。与Python相比,PHP在web开发中更具优势,但在数据科学领域不如Python;与Java相比,PHP在企业级应用中表现较差,但在web开发中更灵活;与JavaScript相比,PHP在后端开发中更简洁,但在前端开发中不如JavaScript。

PHP和Python:代码示例和比较 PHP和Python:代码示例和比较 Apr 15, 2025 am 12:07 AM

PHP和Python各有优劣,选择取决于项目需求和个人偏好。1.PHP适合快速开发和维护大型Web应用。2.Python在数据科学和机器学习领域占据主导地位。

See all articles