来源:https://www.cnblogs.com/wsybky/p/8745286.html

一、$GLOBALS

  在GLOBALS数组中,每一个变量为一个元素,键名对于变量名,值对于变量的内。

  GLOBALS之所以在全局范围内存在,是因为GLOBALS是一个超全局变量,GLOBALS的写法: 如变量 b,写法为 GLOBALS['b'] 。

二、$_SERVER

  $_SERVER 是一个包含例如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建。不能保证每一个服务器 都提供全部项目; 服务器 可能会忽略一些,或者提供一些没有在这里列举出来的项目。

$_SERVER['HTTP_HOST']  请求头信息中的Host内容,获取当前域名。
$_SERVER["SERVER_NAME"] 输出配置文件httpd.conf中的ServerName,一般情况下与HTTP_HOST值相同,但如果服务器端口不是默认的80端口,或者协议规范不是HTTP/.1时,HTTP_HOST会包含这些信息,而SERVER_NAME不一定包含。(主要看配置文件的设置)。
$_SERVER["HTTP_USER_AGENT"] 获取用户相关信息,包括用户浏览器、操作系统等信息。
$_SERVER['HTTP_ACCEPT'] 当前请求的ACCEPT头部信息。
$_SERVER["HTTP_ACCEPT_LANGUAGE"] 这个值是由浏览器发送,表明用户默认的语言设置,后面的q值表示用户对该语言的喜好程度。
$_SERVER["HTTP_ACCEPT_ENCODING"] 大部分的现代浏览器都支持gzip压缩,并会把这一信息报告给服务器。这时服务器就会压缩过的HTML发送给浏览器。这可以减少近80%的文件大小,以节省下载时间和带宽。
$_SERVER["HTTP_COOKIE"] 浏览器的cookie信息。
$_SERVER["HTTP_CONNECTION"] 当前请求的连接情况。
$_SERVER["HTTP_UPGRADE_INSECURE_REQUESTS"] 表示浏览器可读懂服务器发过来的请求,
$_SERVER["HTTP_CACHE_CONTROL"] 表示浏览器是否会缓存这个页面信息。
$_SERVER["PATH"] 当前脚本所在文件系统。
$_SERVER["SystemRoot"] 当前服务器的操作系统。
$_SERVER["COMSPEC"] 指向cmd.exe的路径。
$_SERVER["PATHEXT"] 环境变量设置。
$_SERVER["WINDIR"] 脚本指向的系统目录。
$_SERVER["SERVER_SIGNATURE"] 包含服务器版本和虚拟主机名的字符串。
$_SERVER["SERVER_SOFTWARE"] 服务器软件配置信息。
$_SERVER["SERVER_ADDR"] 当前运行脚本的服务器的ip地址。
$_SERVER["SERVER_PORT"] 服务器端口。
$_SERVER["REMOTE_ADDR"] 浏览网页的用户ip。
$_SERVER["DOCUMENT_ROOT"] 当前运行脚本所在的根目录。
$_SERVER["REQUEST_SCHEME"] 服务器通信协议,是http或https。
$_SERVER["CONTEXT_PREFIX"] 前缀。
$_SERVER["CONTEXT_DOCUMENT_ROOT"] 当前脚本所在的文档根目录。
$_SERVER["SERVER_ADMIN"] 服务器管理员信息。
$_SERVER["SCRIPT_FILENAME"] 当前执行脚本的绝对路径。
$_SERVER ["REMOTE_PORT"] 用户连接到服务器时所使用的端口。
$_SERVER["GATEWAY_INTERFACE"] 服务器使用的CGI规范的版本。
$_SERVER["SERVER_PROTOCOL"] 请求页面时通信协议的名称和版本。
$_SERVER["REQUEST_METHOD"] 请求提交数据的方式。
$_SERVER["QUERY_STRING"] 服务器请求时?后面的参数。
$_SERVER["REQUEST_URI"] 当前脚本路径,根目录之后的目录。
$_SERVER["SCRIPT_NAME"] 当前脚本的路径。这在页面需要指向自己时非常有用。
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名。
$_SERVER["REQUEST_TIME"] 得到请求开始时的时间戳。

三、$_REQUEST

  $_REQUEST用于存储 $_POST 和 $_GET 的数据总和,他们之间是相互独立的。   -    $_REQUEST[ "name" ]

  如果 unset 掉 $_GET 或者 $_POST ,$_REQUEST 数组中的所存储的数据都不会发生改变。 当 $_POST和$_GET中都有同名元素时,$_REQUEST所存储的数据会依据php配置文件 php.ini 中配置的 request_order = "GP" (默认)来决定先存储GET数据再存储POST数据,最终的结果是POST数据覆盖掉了GET数据。如果改变 request_order = "PG",结果你会反来。

四、$_POST 和 $_GET

  $_POST 用于收集 HTML 表单 method = "post" 方式提交的数据。 $_POST 也常用于传递变量。  -   $_POST[ "name" ]

  $_GET 用于收集 HTML 表单 method = "get" 方式提交的数据。 $_POST 也常用于收集 URL 中发送的数据。  -   $_GET[ "name" ]

五、$_FILES

  $_FILES 用于获取上传的文件,用法:

html文件: <input type="file" name="myFile">
$_FILES['myFile']['name'] 显示客户端文件的原名称。
$_FILES['myFile']['type'] 文件的 MIME 类型,例如"image/gif"。
$_FILES['myFile']['size'] 已上传文件的大小,单位为字节。
$_FILES['myFile']['tmp_name'] 储存的临时文件名,一般是系统默认。
$_FILES['myFile']['error'] 该文件上传相关的错误代码。

六、$_ENV

  PHP中的$_ENV存储了一些系统的环境变量,因为涉及到实际的操作系统。

七、$COOKIE

  Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。

  语法:$.cookie(名称,值,[option])

  (1)读取cookie值

   $.cookie(cookieName)  --->  cookieName:要读取的cookie名称。

   示例:$.cookie("username"); 读取保存在cookie中名为的username的值。

  (2)写入设置Cookie值:

   $.cookie(cookieName,cookieValue); --->  cookieName:要设置的cookie名称,cookieValue表示相对应的值。

   示例:$.cookie("username","admin"); 将值"admin"写入cookie名为username的cookie中。

      $.cookie("username",NULL);   销毁名称为username的cookie

  (3) [option]参数说明:

     expires: 有限日期,可以是一个整数或一个日期(单位:天)。注: 如果不设置这个东西,浏览器关闭之后此cookie就失效了

     path:  cookie值保存的路径,默认与创建页路径一致。

     domin:     cookie域名属性,默认与创建页域名一样。 注: 跨域的概念,如果要主域名二级域名有效则要设置 ".xxx.com"

     secrue:  一个布尔值,表示传输cookie值时,是否需要一个安全协议。

八、$_SESSION

    session的中文译名叫做“会话”,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个session。

   $_SESSION的用法:

   session_start( );  ---> 开始一个会话或者返回已经存在的会话。

   说明:这个函数没有参数,且返回值均为true。如果你使用基于cookie的session(cookie-based sessions),那么在使用Session_start()之前浏览器不能有任何输出,否则会发生以下错误。

   注册session变量: $_SESSION[‘xxx’] = xxx ,注册SESSION全局变量

php 超全局变量(整理)的更多相关文章

  1. 记录PHP的超全局变量$_SERVER

    $_SERVER是PHP中十分实用的超全局变量,在开发可移植的网站的时候会变得很有用. 下面我记录一下我自己常用到的几个变量 1.$_SERVER['SERVER_NAME']:记录了网站的域名. 2 ...

  2. PHP变量入门教程(2)超全局变量,总共9个

    PHP 超全局变量 $GLOBALS 包含一个引用指向每个当前脚本的全局范围内有效的变量.该数组的键标为全局变量的 名称.从 PHP 3 开始存在 $GLOBALS 数组. $_SERVER 变量由 ...

  3. PHP超全局变量

    PHP提供了九种超全局变量(数组) 1 $_GET //地址栏上获得的值 2 $_POST //POST表单发送的数据 3 $_REQUEST //GET和POST的内容全都有 4 $_SERVER ...

  4. php预定义变量,超全局变量,魔术方法,特殊函数变量使用

    <?php /* * 本代码全部为测试函数代码,部分注释和写实例 * * 修改php.ini variables_order=”EGPCS” * 请注意$_REQUEST在优先级传参的时候会造成 ...

  5. PHP中超全局变量$GLOBALS和global的区别

    一.超全局变量$GLOBALS PHP超全局变量有很多,如下的都属于超全局变量(Superglobal): $GLOBALS,$_SERVER,$_GET,$_POST,$_FILES,$_COOKI ...

  6. PHP 中的超全局变量

    (1)$_GET[].一个包含所有PHP 从客户端浏览器接收的GET变量的数组. (2)$_POST[].一个包含所有PHP 从客户端浏览器接收的POST变量的数组. (3)$_COOKIE[].一个 ...

  7. php基础(三)超全局变量

    超全局变量 在 PHP 4.1.0 中引入,是在全部作用域中始终可用的内置变量. PHP 全局变量 - 超全局变量 PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可 ...

  8. 【二十三】php之预定义超全局变量

    php提供了九种预定义超全局变量: $_GET.$_POST.$_REQUEST.$_SERVER.$_ENV.$_FILE. $_COOKIE.$_SESSION. $GLOBALS 1.$_GET ...

  9. PHP学习笔记--Php预定义超全局变量$_GET

    Php中的许多预定义变量都是超全局的,无需使用global声明 超全局变量 不需要声明就可以直接使用 提供超全局变量(数组)为了让程序员更快捷的编程 $GLOBALS— 引用全局作用域中可用的全部变量 ...

随机推荐

  1. java 第六周上机练习 04.09

    1.编写一个简单程序,要求数组长度为5,静态赋值10,20,30,40,50,在控制台输出该数组的值. int [] arr= {10,20,30,40,50}; for(int i=0;i<a ...

  2. 让你第一次认识到Java的内存管理

    发现之前写的可读性不好,这次准备试试换风格,去掉长篇大论,觉得这个风格好的,麻烦点个赞啦 清理.JVM的妙处 大家以后都是程序员,假设你很不幸,需要自己交钱租房子. 你作为一个小穷人,租的房子到期了( ...

  3. WeixinJSBridge API使用实例

    <span style="color: rgb(51, 51, 51); font-family: tahoma, arial, 宋体; font-size: 14px; line-h ...

  4. Redis 笔记(一)——数据类型简介

    Redis 是一个 key-value 存储系统,但是它的 value 值不仅仅可以存储字符串,value 共有 五种 数据结构类型,具体如下: 数据结构类型 结构类型 结构存储的值 结构的读写能力 ...

  5. APScheduler轻量级定时任务框架

    目录 一.APScheduler简介 支持的后端存储作业 集成的Python框架 二.APScheduler下载安装 三.APScheduler组件 各组件简介 调度器 作业存储器 执行器 触发器 四 ...

  6. beanshell自定义聚合报告时分线程组阶段展示

    假设现在一共会加载100个线程,期望聚合报告中分别展示1-20,20-40,40-60,60-80的四个阶段的线程并发性能数据,而不是总体的统计数据 beanshell脚本,具体内容: import ...

  7. Xcode 6.3.1Mac版 V6.4.Beta3免费下载

    Xcode for mac是Mac OS系统以及IOS系统开发者专用于构建 Mac OS X 及 iOS 应用程序的完整工具集 - Xcode 5 的工具经过重新设计,它们的性能更优秀.使用更容易,能 ...

  8. AJ学IOS(51)多线程网络之GCD下载合并图片_队列组的使用

    AJ分享,必须精品 合并图片(图片水印)第一种方法 效果 实现: 思路: 1.分别下载2张图片:大图片.LOGO 2.合并2张图片 3.显示到一个imageView身上 // 异步下载 dispatc ...

  9. GeoGebra函数使用

    分段函数使用 输入指令: If(x < -2, x, -2 < x < 2, x², x > 2, x)

  10. stand up meeting 1/14/2016

    part 组员                工作              工作耗时/h 明日计划 工作耗时/h    UI 冯晓云  主要对生词本卡片的整体设计做修改:协助主程序完成popup部分 ...