全局变量:
就是在函数外面定义的变量,不能在函数中直接使用,因为它的作用域不会到函数内部,所以在函数内部使用的时候尝尝看到类似global $a;

超全局变量:
在所有脚本都有效,所以,在函数可以直接使用,如$_GET $_SERVER都是超全局变量,变量保存在$GLOBALS数组中

超全局变量

$GLOBALS (Global作用是定义全局变量,只应用于当前网页(包括include和require的所有文件)而不是整个网站,$GLOBALS用于在php脚步中的任意位置访问全局变量(从函数或方法中均可))

$_REQUEST (可以获取post方法和get方法提交的数据,比较慢,尽量不要使用$_REQUEST,应该从$_GET,$_POST,$_COOKIE,$_ENV, $_SERVER等变量中取出需要的值)

$_GET (从服务器上获取数据,把参数数据列队加到提交表单的action属性所指的url中值和表单内各个字段一一对应,在url中可以看到)

$_ENV (包含服务端环境变量的数组,可用在php程序的任何地方直接访问,它是被动的接受服务器端的环境变量转换为数组元素)

$_SESSION (当前脚本可用session变量的数组,$HTTP_SESSION_VVARS包含相同的信息(4.1.0已废弃)但它不是一个超全局变量,和session是不同的变量,php处理它们的方式不同)

$_SERVER (保存关于报头,路径和脚本位置的信息)

$_POST (向服务器传送数据,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的utl地址,用户看不到过程)

$_FILES ($_FILES['file']['name’]显示客户端文件的原名称,
     $_FILES['file']['type']文件的mime类型。例如"image/git"
     $FILES['file'][‘size’]已上传文件的大小,单位为字节
     $FILES['file'][‘tmp_name’]储存的临时文件名,一般是系统默认
     $FILES['file'][‘error’]该文件上传相关的错误代码 )

$_COOKIE (通过http cookie方式传递给当前脚步的变量的数组,$HTTP_COOKIE_VARS包含相同的信息,但它不是一个超全局变量,而且它和$_COOKIE是不相同的变量,php处理它们的方式不同)

php代码审计2全局变量和超全局变量的更多相关文章

  1. PHP全局变量,超全局变量

    php中有许多超全局变量,这意味着它们在一个脚本的全部作用域中都可用.在函数或方法中无需执行 global $variable; 就可以访问它们. 这些超全局变量是: $GLOBALS    引用全局 ...

  2. php 全局变量和超全局变量

    global 全局变量(在当前页面全部地方有效) $GLOBALS['name'] 超全局变量(在整个网站全部地方有效) 一个包含了全部变量的全局组合数组.变量的名字就是数组的键.还有_GET,_PO ...

  3. PHP的九个超全局变量

    1. 什么是超全局变量 PHP官网:超全局变量 超全局变量就是在全部作用域中始终可用的内置变量. 全局作用域.函数作用域都可以使用的PHP内置变量. 在函数或方法中无需执行 global $varia ...

  4. PHP代码审计2-常用超全局变量,常用命令注入,常用XSS漏洞审计,文件包含

    超全局变量 $GLOBALS — 引用全局作用域中可用的全部变量$_SERVER — 服务器和执行环境信息$_GET — HTTP GET 变量$_POST — HTTP POST 变量$_FILES ...

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

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

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

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

  7. PHP超全局变量

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

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

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

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

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

随机推荐

  1. python's twenty day for me 继承 和 super()方法

    super(): 在单继承中就是单纯的寻找父类. 在多继承中就是根据子节点所在图 的mro顺序,找寻下一个类. 遇到多继承和super(): 对象.方法 1,找到这个对象对应的类. 2,将这个类的所有 ...

  2. Python Twisted系列教程4:由Twisted支持的诗歌客户端

    作者:dave@http://krondo.com/twisted-poetry/  译者:杨晓伟(采用意译) 你可以在这里从头开始阅读这个系列. 第一个twisted支持的诗歌服务器 尽管Twist ...

  3. spring cloud微服务搭建(一)

    martin fowler大神提出微服务的概念后,各种微服务的技术满天飞,现在用的比较多的是spring cloud和阿里的dubbo,由于dubbo 在16年10月份就停止更新了,不过好像前些天又更 ...

  4. Ubuntu 17.04 允许使用root ssh登录

    用ubuntu 17.04部署完docker后,用winscp去管理系统上的文件发现默认的管理员账号权限不够,想重新用root登录,发现一只被服务器拒绝(permission denied).已经执行 ...

  5. 机器学习工具Octave安装(Win10环境)

    介绍 Octave是一个旨在提供与MATLAB语法兼容的开放源代码计算与数值分析的工具:同时也是GNU成员之一.Octave最初的设计以MATLAB为模板,在功能上与MATLAB有许多相似之处.但相较 ...

  6. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 5 Octave Tutorial—5.4 绘制数据图

    5.4 绘制数据图 参考视频: 5 - 4 - Plotting Data (10 min) 5.4.1 绘制曲线 1.画一个sin曲线 >> t = [:0.01:0.98]; > ...

  7. JanusGraph : 图和图数据库的简介

    JanusGraph:图数据库系统简介 图(graph)是<数据结构>课中第一次接触到的一个概念,它是一种用来描述现实世界中个体和个体之间网络关系的数据结构. 为了在计算机中存储图,< ...

  8. xcode恢复语法高亮

    [xcode恢复语法高亮] 非常简单,在Organizer中删除derivedData.

  9. java基础之多线程五:实现Runnable的原理

    实现Runnable接口的原理. 背景: 多线程的第一种实现方式是::继承Thread类, 因为我们自定义的类(MyThread)是Thread类的子类, 所以MyThread类的对象调用start( ...

  10. C++——STL之vector, list, deque容器对比与常用函数

    STL 三种顺序容器的特性对比: vector 可变数组,内存空间是连续的,容量不会进行缩减.支持高效随机存取,即支持[]和at()操作.尾部插入删除效率高,其他位置插删效率较低: list 双向链表 ...