php $_SERVER[‘QUERY_STRING‘]函数

• 简介$_SERVER函数( 获取当前服务器信息)

预定义变量就是系统自己定义好的变量,直接使用就可以。预定义变量都是以数组的形式存在的(也就是说我们根据 [ ] 中的不同参数,选择我们要的到的信息)。PHP的预定义有很多种,包括我们的get,post等等,都是php的预定义变量。

$_SERVER是 预定义变量之一 ,一个包含头信息、路径、脚本位置等信息的数组。该数组的元素由Web服务器创建。

 

做题过程中遇到的四个变量的区分进行一个简单的介绍:

1. $_SERVER["QUERY_STRING"]    #查询(query)的字符串     
2.$_SERVER["REQUEST_URI"]       #访问此页面所需的URI
3.$_SERVER["SCRIPT_NAME"]       #包含当前脚本的路径           
4.$_SERVER["PHP_SELF"]。          #当前执行的叫脚本的文件名
 

•示例:

1,http://www.boke.com/

  结果:

  $_SERVER["QUERY_STRING"] = “”

  $_SERVER["REQUEST_URI"] = “/”

  $_SERVER["SCRIPT_NAME"] = “/index.php”

  $_SERVER["PHP_SELF"] = “/index.php”

 2,http://www.boke.com/scr.php/?a=bbb(附带查询)

  结果:

  $_SERVER["QUERY_STRING"] = “a=bbb″

  $_SERVER["REQUEST_URI"] = “/?a=bbb″

  $_SERVER["SCRIPT_NAME"] = “/src.php”

  $_SERVER["PHP_SELF"] = “/src.php”

  3,http://www.boke.com/scr.php/?x=111&y=222

$_SERVER["QUERY_STRING"] = “x=111&y=222”

  $_SERVER["REQUEST_URI"] = “/scr.php/?x=111&y=222”

  $_SERVER["SCRIPT_NAME"] = “/src.php”

  $_SERVER["PHP_SELF"] = “/src.php”

•总结:

  $_SERVER["QUERY_STRING"]获取查询语句,获取的是?后面的值

  $_SERVER["REQUEST_URI"] 获取 http://www.boke.com 后面的值,包括/

  $_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:/src.php (如果网址是http://www.boke.com/aaa/src.php ,最后检索的内容就是 /aaa/src.php)

  $_SERVER["PHP_SELF"] 当前正在执行脚本的文件名

 
 
下面是$_SERVER的数组信息表
 
数组元素 说明
$_SERVER['PHP_SELF'] 当前执行脚本的文件名,与 document root 有关。例如,在地址为 http://c.biancheng.net/test.php/foo.bar 的脚本中使用 $_SERVER['PHP_SELF'] 将得到 /test.php/foo.bar
$_SERVER['SERVER_ADDR'] 当前运行脚本所在服务器的 IP 地址
$_SERVER['SERVER_NAME'] 当前运行脚本所在服务器的主机名。如果脚本运行于虚拟主机中,该名称就由那个虚拟主机所设置的值决定
$_SERVER['SERVER_PROTOCOL'] 请求页面时通信协议的名称和版本。例如,“HTTP/1.0”
$_SERVER['REQUEST_METHOD'] 访问页面使用的请求方法。例如“GET”“HEAD”“POST”“PUT”
$_SERVER['DOCUMENT_ROOT'] 当前运行脚本所在的文档根目录。在服务器配置文件中定义
$_SERVER['HTTP_ACCEPT_LANGUAGE'] 当前请求头中 Accept-Language: 项的内容(如果存在)。例如,“en”
$_SERVER['REMOVE_ADDR'] 浏览当前页面的用户 IP 地址(客户端ip),注意与 $_SERVE R['SERVER_ADDR'] 的区别
$_SERVER['SCRIPT_FILENAME'] 当前执行脚本的绝对路径
$_SERVER['SCRIPT_NAME'] 包含当前脚本的路径
$_SERVER['QUERY_STRING']  查询(query)的字符串。
$_SERVER['PATH_INFO'] 包含由客户端提供的、跟在真实脚本名称之后并且在查询语句(query string)之前的路径信息(如果存在)。例如,当前脚本是通过 URL http://c.biancheng.net/php/path_info.php/some/stuff?foo=bar 被访问的,那么 $_SERVER['PATH_INFO'] 将包含 /some/stuff
 $_SERVES[HTTP_X_FORWARDED_FOR]  在PHP 中使用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。

要想透过代理服务器取得客户端的真实 IP 地址,就要使用$_SER VER["HTTP_X_FORWARDED_FOR"]  来读取。

php预定义变量~$_SERVER[‘QUERY_STRING‘]的更多相关文章

  1. php预定义常量$_SERVER

    1.需求 了解预定义常量$_SERVER 2.属性 $_SERVER['REQUEST_URI'] //URI 用来指定要访问的页面.例如 "/index.html" $_SERV ...

  2. PHP预定义变量$_SERVER

    PHP预定义变量$_SERVER $_SERVER 是一个包含诸如头部(headers).路径(paths)和脚本位置(script locations)的数组.数组的实体由 web 服务器创建,不能 ...

  3. linux中位置参数变量和预定义变量

    位置参数变量   预定义变量

  4. 6)PHP,预定义变量

    预定义变量也叫超全局变量: :预定义变量又叫超全局变量,包括: $_GET, $_POST, $_SERVER, $_REQUEST, $GLOBALS, $_COOKIE, $_SESSION, . ...

  5. 深入理解PHP内核(八)变量及数据类型-预定义变量

    原文链接:http://www.orlion.ga/249/ PHP脚本在执行的时候用户全局变量(在用户空间显示定义的变量)会保存在一个HashTable数据类型的符号表中(symbol_table) ...

  6. nginx内置预定义变量

    nginx的配置文件中可以使用的内置变量以美元符$开始,也有人叫全局变量.其中,部分预定义的变量的值是可以改变的. $arg_PARAMETER 这个变量值为:GET请求中变量名PARAMETER参数 ...

  7. PHP预定义变量

    * PHP预定义 * 预定义变量 * $_GET - 接收客户端以请求类型为GET方法发送的数据内容 * $_POST - 接收客户端以请求类型为POST方法发送的数据内容 * $_REQUEST - ...

  8. [Shell]Bash变量:自定义变量 & 环境变量 & 位置参数变量 & 预定义变量

    --------------------------------------------------------------------------------- 变量是计算机内存的单元,其中存放的值 ...

  9. $_ENV和$GLOBALS预定义变量

    1,$_ENV该全局数组可以获取环境变量,在php5.3中默认禁用,但是可以在php.ini中启用. variables_order="EGPCS" 2,$GLOBALS一个包含了 ...

  10. make的自动变量和预定义变量

    make的自动变量 $@ 规则目标的文件名.如果目标是档案文件的一个成员,"$@"就是档案文件的名称 $% 当目标是档案文件的一个成员时,"$%"是该成员的名称 ...

随机推荐

  1. 算法金 | Transformer,一个神奇的算法模型!!

    大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 抱个拳,送个礼 在现代自然语言处理(NLP)领域,Transformer 模型的出现带 ...

  2. ONNX Runtime入门示例:在C#中使用ResNet50v2进行图像识别

    ONNX Runtime简介 ONNX Runtime 是一个跨平台的推理和训练机器学习加速器.ONNX 运行时推理可以实现更快的客户体验和更低的成本,支持来自深度学习框架(如 PyTorch 和 T ...

  3. Linux后台运行jar文件和关闭Java程序

    后台运行jar文件 Linux 运行jar包 java -jar jar文件名字.jar 这是最简单运行jar文件的命令. 特点:当前命令行窗口将被锁定,可按CTRL + C中止程序运行,或直接关闭窗 ...

  4. 第二部分:关键技术领域的开源实践【Linux服务器自动化运维】

    Linux运维可能会遇到多种问题,这些问题可能源于技术挑战.资源配置.安全性.管理复杂性等多个方面.以下是一些常见的Linux运维问题: 技能要求: Linux系统通常需要较高的技术水平和经验来进行有 ...

  5. oeasy教您玩转vim - 82 - # 函数function

    ​ 函数 function 回忆 关于宏,我们回忆一下 qa 开始录制宏 q 结束录制宏 @a 应用宏 qA 追加录制宏 控制寄存器内容其实就是控制宏 宏还有一些特性 可以多文件执行宏 可以并发运行宏 ...

  6. AT_abc218_d 题解

    洛谷链接&Atcoder 本篇题解为此题较简单做法及较少码量,并且码风优良,请放心阅读. 题目简述 给定一个平面内的 \(N\) 个点的坐标,求这 \(N\) 个点中选 \(4\) 个点可构成 ...

  7. CF1929B Sasha and the Drawing 题解

    CF1929B 题意 给定一个 \(n\times n\) 的正方形,已知正方形最多有 \(4\times n-2\) 条对角线,要求要有至少 \(k\) 条对角线经过至少一块黑色方格,求至少要将几条 ...

  8. jwt redis,微信登陆知识复习 uniapp 请求封装,统一异常处理 相关, HutoolDemo工具介绍)

    第三节   后台布局搭建,代码可以人工智能来写,但是环境初步搭建需要我们先建起来,所以以下记录快带搭建的过程, 思路: 后台首页的搭建 第一   用到了element--UI 自带的页面布局组件,它就 ...

  9. 用IO多路复用实现 nginx 静态资源代理(C/Java/Golang)

    用IO多路复用实现 nginx 静态资源代理(C/Java/Golang) 效果展示 代理 HTML 代理图片 注意, 静态资源代理基于 HTTP, 可以了解上一篇文章: 几十行代码使用TCP简单实现 ...

  10. docker 概念,安装,启动,运行

    docker概念,安装,启动,运行模式 docker的概念 镜像(image) 模板,可以通过模板来创建容器服务,tomcat镜像===>run==>tomacat01容器(提供服务),通 ...