Code前端首页关于Code前端联系我们

PHP超级全局变量$_SERVER使用详解

terry 2年前 (2023-09-25) 阅读数 47 #后端开发

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[ 'QUERY_STRING'] //查询字符串。
  • $_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在文档的根目录
  • $_SERVER['HTTP_ACCEPT'] //当前请求的Accept:头的内容。
  • $_SERVER['HTTP_ACCEPT_CHARSET'] //Accept-Charset:当前请求头的内容。
  • $_SERVER['HTTP_ACCEPT_ENCODING'] //Accept-Encoding内容:当前请求头
  • $_SERVER['HTTP_CONNECTION'] //连接内容:当前请求头。例如:“保持活力”。
  • $_SERVER['HTTP_HOST'] //Host内容:当前请求头。
  • $_SERVER['HTTP_REFERER'] //当前页面链接的上一个页面的URL。
  • $_SERVER['HTTP_USER_AGENT'] //User_Agent内容:当前请求头。
  • $_SERVER['HTTPS']//如果通过https访问,则设置为非空(on),否则返回off
  • $_SERVER['SCRIPT_FILENAME'] #当前脚本名称的绝对路径跑步。 † 细绳。
  • $_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 程序与文档根目录关联的名称。
  • $_SERVER['HTTP_REFERER']:链接到当前页面的上一个页面的 URL。
  • $_SERVER['SCRIPT_NAME']:网站根目录的路径以及PHP程序文件的名称。
  • $_SERVER['REQUEST_URI']:访问此页面所需的 URI。
  • $_SERVER['SCRIPT_FILENAME']:正在运行的PHP程序的绝对路径和文件名。
  • $_SERVER['PATH_TRANSLATED']:当前PHP程序所在文件系统的基本路径(不是文档根)。
  • $_SERVER['QUERY_STRING']:查询字符串(URL中第一个问号?之后的内容,但不是#之后的内容)。
  • $_SERVER['argv']:传递给当前PHP程序的参数。
  • $_SERVER['argc']:在命令行模式下,包含传递给程序的命令行参数的数量。
  • $_SERVER['REQUEST_TIME']:请求开始时的时间戳,自 PHP 5.1.0 起有效。
  • $_SERVER['REQUEST_METHOD']:使用页面时的请求方法,如“GET”、“HEAD”、“POST”或“PUT”。
  • $_SERVER['HTTP_ACCEPT']:当前请求的 Accept: header 的内容。
  • $_SERVER['HTTP_ACCEPT_CHARSET']:当前请求的Accept-Charset:头数据的内容。示例:“iso-8859-1,*,utf-8”。
  • $_SERVER['HTTP_ACCEPT_ENCODING']:当前请求的 Accept-Encoding: header 的内容。例如:“gzip”。
  • $_SERVER['HTTP_ACCEPT_LANGUAGE']:Accept-Language的内容:当前请求的标头。例如:“zh-cn”。
  • $_SERVER['HTTP_CONNECTION']:连接内容:当前请求的头信息。例如:“保持活力”。
  • $_SERVER['HTTP_HOST']:Host:当前请求的头信息。
  • $_SERVER['HTTPS']:如果PHP程序通过HTTPS协议使用,则该值不为空。
  • $_SERVER['PHP_AUTH_DIGEST']:当用作Apache模块时,在HTTP Digest认证过程中,该变量被设置为客户端发送的“Authorization”HTTP header的内容(用于其他认证功能)。
  • $_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,上面列出的某些元素是有效的(或具有实际含义)。? UEST_URI "]

描述:访问此页面所需的 URI

  • 3, $_SERVER["SCRIPT_NAME"]

描述:包含当前脚本的路径

  • 4, PH_PERSEL4, $"PERSEL ]

描述:当前执行脚本的文件名

示例:

1,https://www.qcwlseo.com/ (直接打开主页)❓s:♶ $_SERVER["QUERY_STRING"] = ""

  • $_SERVER["REQUEST_URI"] = "/"
  • $_SERVER["SCRIPT_NAME"] = "/index.php"$_SERVERS "] = " /index.php"
  • 2, https://www.qcwlseo.com/?p=222 (通过查询)

    结果:

      • = "p=222 "
      • $_SERVER["REQUEST_URI"] = "/?p=222"
      • $_SERVER["SCRIPT_NAME"] = "/index.php"
      • _PH_SERVER] = "/index .html =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"] 在 https://www.qcwlseo.com 后获取值,包括 /
      • $_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。四个变量之间的差异。查看

    版权声明

    本文仅代表作者观点,不代表Code前端网立场。
    本文系作者Code前端网发表,如需转载,请注明页面地址。

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    热门