1.PHP 预定义的超全局变量数组

特性:

a.特殊的数组,操作方式没有区别

b.不用声明,php脚本中默认存在,因为在php中不用定义,所以在自定义变量是应避免和预定的全局变量同名

c.在全局范围内自动生效,即在函数中直接就可以使用,不用使用global关键字访问

2.超全局变量数组

a.$_SERVER 服务器变量

$_SERVER 是一个包含诸如头部信息,路径和脚本位置的数组

示例:

foreach($_SERVER as $key => $value){
     echo '$_SERVER['+.$key+']='.$value.'<br>';

}

b.$_ENV 环境变量

$_ENV 数组中的内容是在PHP解析器运行时,从PHP所在服务器中环境变量转变为PHP全局变量

示例:

foreach($_ENV as $key => $value){
      echo '$_ENV['+.$key+']'.$value.'<br>';

}

c.$_GET Url GET 变量

$_GET 数组也是超全局变量数组,通过Url Get 方法传递的变量组成数组,它属于外部变量,即在服务器页面中通过$_GET超全局数组Url 或表单GET方式

传递过来的参数

示例:

http://www.xxx.com/index.php?id=1&name=lin

echo 'Id='.$_GET['id'].'<br>';

echo 'Name='.$_GET['name'].'<br>';

或者:print_r($_GET);

d.$_POST HTTP POST 变量
$_POST 数组是通过HTTP POST 方法传递的变量组成数组 $_POST 和$_GET 数组之一都可以保存表单提交的变量
示例:
<form action='save.php' method='post'>
<input type='text' name='name'/>
<input type='text' name='id'/>
</form>
foreach($_POST as $key=>$value){
echo $key.'='$value.'<br>';
}

e.$_REQUEST request变量
此关联数组包含$_GET $_POST 和$_COOKIE 中全部内容 如果表单时通过form 的post 提交的就通过$_POST 获取,通过
GET方式发送就用$_GET 方式获取。$_REQUEST不用关注是POST 或者GET ,即$_REQUEST 可以获取get 或post的数据但是
速度慢。

f.$_FILES HTTP 文件上传变量
使用表单file输入域上传文件时,必须使用post方式提交但在服务器端不能通过$_post 文件获取而是通过$_FILES来获取
$_FILES是一个二维数组,包含5个子元素。

g.$_COOKIE HTTP cookies
$_COOKIE 超全局数组是经HTTP cookies方法提交至脚本变量,通过这些cookies 是由以前执行的PHP脚本通过setCookie()
函数设置到客户端的浏览器,php脚本从客户端获取cookie后将会自动转换成一个变量,可以通过$_COOKIE 超全局数组和
cookies的名称来存取指定cookie值。

h.$_SESSION session 变量
会话控制是在服务端使用session跟踪用户,当服务端页面中使用session_start() 函数开启session后,就可以使用$_SESSION
数组主机全局变量。

i.$GLOBALS global
$GLOBALS 是由所以定义的全局变量组成的数组,变量名就是该数组的索引,在所有脚本中都有效,在函数或对象中的方法中不
需要使用关键字global访问,在函数外部声明全局变量,可以使用$_GLOBALS 数组替代global 关键字
示例:
$a=1;$b=2;

function $sum(){

$GLOBALS['b']=$GLOBALS['a']+$GLOBALS['b'];
}
$sum();
echo $b;

PHP学习1.5-预定义超全局数组变量的更多相关文章

  1. PHP 预定义超全局数组/变量

    1.超全局变量:不用定义声明即可用.PHP有九种 2.$_GET:通过参数传递给当前脚本的变量的数组 浏览器页面-->(http协议)->apache-->php module--& ...

  2. PHP中预定义超全局数组(变量)

    PHP中许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用.超全局变量除了具有全局变量特点外,在函数或方法中无需执行global $variable:就可以访问它们. 提供超全 ...

  3. PHP中的预定义超全局数组

    定义 超全局变量,是在全部作用域中始终可用的内置变量. PHP中的许多预定义变量都是"超全局的",这意味着它们在一个脚本的全部作用域中都可用. 在函数或方法中无需执行 global ...

  4. PHP开发——超全局数组变量

    概述 l  JS中的变量分两类:局部变量.全局变量. l  PHP中的变量分三类:局部变量.全局变量.超全局变量. l  局部变量:在函数内部声明的变量,就是局部变量.函数执行完毕,局部变量就消失了. ...

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

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

  6. php超全局数组变量

    (1)$_SERVER 服务器的相关信息 (2)$_GET 接收用户通过url向服务器传的参数  $POST 接收用户通过http协议向服务器传递的参数 发送get请求 <a href=&quo ...

  7. php学习笔记 [预定义数组(超全局数组)]

    <?php  预定义数组: * 自动全局变量---超全局数组 * * 1.包含了来自WEB服务器,客户端,运行环境和用户输入的数据 * 2.这些数组比较特别 * 3.全局范围内自动生效,都可以直 ...

  8. PHP基础-PHP中预定义的超全局数组

    预定义数组: 自动全局变量---超全局数组 1. 包含了来自WEB服务器,客户端,运行环境和用户输入的数据 2. 这些数组比较特别 3. 全局范围内自动生效,都可以直接使用这些数组 4. 用户不能自定 ...

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

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

随机推荐

  1. 踩坑记-java mysql 新增获取主键、DIY主键、UUID

    java mysql 获取主键.DIY主键.UUID,简单粗暴,代码如下: mapper.xml insert id="add" parameterType="com.x ...

  2. java.net.UnknownHostException 异常处理(转)

    在linux系统下部署Java产品的集群环境时,后台报出如下异常,系统报找不到名为“QATest242”的主机: ERROR  - Get local host name failed -com.tr ...

  3. [转]使用TortoiseGit处理代码冲突

    场景一  user0 有新提交 user1 没有pull -> 写新代码 -> pull -> 提示有冲突   解决办法一 -> stash save(把自己的代码隐藏存起来) ...

  4. DbUtils要点小结

    一. DbUtils核心API 1. QueryRunner update方法 query方法 2. 各种Handler都实现ResultSetHandler接口 beanhandler beanli ...

  5. 容斥原理——hdu1796

    /* 遇到这种题一般用dfs,枚举起点来做 但是本题如何进行容斥? 比如以x为起点,第一步dfs到y,那么因子有lcm(x,y)的 所有数要被减掉(容斥中偶数是减法) 然后第二步dfs到z,那么因子有 ...

  6. 国内有哪些质量高的JAVA社区?

    国内有哪些质量高的JAVA社区? 转自:http://www.zhihu.com/question/29836842#answer-13737722 并发编程网 - ifeve.com 强烈推荐 Im ...

  7. 菜鸟nginx源码剖析数据结构篇(二) 双向链表ngx_queue_t[转]

    nginx源码剖析数据结构篇(二) 双向链表ngx_queue_t Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.csdn. ...

  8. varStatus实现<c:forEach获取元素的下标 集合长度

    有时候需要获取元素的下标,来实现一个编号的效果 那么使用 varStatus可以实现 代码 效果 如果需要把序号倒着数 那就用集合的长度减去当前下标 首先引入 <%@ taglib prefix ...

  9. java单元测试小结

    1. mock 构造函数 import static org.junit.Assert.*; import java.util.ArrayList; import org.junit.Test; im ...

  10. neo4j的搭建和实例使用

    一. 简介 neo4j是当今最流行的图数据库,基于 节点+关系 的架构,保存了图形数据的基本元素.同时,数据库也支持通过基础数据元素和独特的CQL查询语法,快速方便的检索.构建复杂的图表关系结果. 二 ...