zoukankan      html  css  js  c++  java
  • PHP的global和$GLOBALS的区别

    global是关键字,通常添加在变量前,可以使变量的作用域为全局。

    $GLOBALS预定义的超全局变量,把变量扔到里面一样可以变成全局变量。
    $GLOBALS 是一个关联数组,每一个变量为一个元素,键名对应变量名,值对应变量的内容。$GLOBALS 之所以在全局范围内存在,是因为 $GLOBALS 是一个超全局变量。

    global $var : 指函数外部同名变量的引用

    $GLOBALS['var'] : 指函数外部变量本身

    $a = 100;
    function one(){
        global $a;
        unset($a);
    }
    one();
    echo $a;
    // 输出 100
    /*******************************/
    $a = 100;
    function two(){
        unset($GLOBALS['a']);
    }
    two();
    echo $a;
    // 输出 Notice: Undefined variable: a

    global $var; 等价于 $var = &$GLOBALS['var'];

    在函数内释放一个全局变量,应该这样:

    unset($GLOBALS['var']);

    而不能这样:

    global $var; unset($var);
  • 相关阅读:
    接口测试01
    mysql主从
    linux下配置JDK
    linux常用命令
    mysql基本语句
    线程与进程
    loadrunner函数
    设计模式-模板方法模式
    设计原则-CRP合成复用原则
    设计原则-LOD迪米特法则
  • 原文地址:https://www.cnblogs.com/chenyuphp/p/11746978.html
Copyright © 2011-2022 走看看