• 技术文章 >后端开发 >PHP问题

    php全局变量在函数内不能使用怎么办

    青灯夜游青灯夜游2021-10-11 18:38:40原创214

    解决方法:1、利用global关键字在函数内导入全局变量,语法“global 全局变量1, 全局变量2, ...”;2、利用超全局变量“$GLOBALS”访问指定全局变量,语法“$GLOBALS['全局变量名']”。

    本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

    一般情况下全局变量在函数内是不能使用,但有时我们就必须要在函数内使用全局变量,这要怎么办?

    PHP提供了两种解决方法: global关键字和$GLOBALS超全局变量。

    方法1、利用global关键字

    <?php
    $a = 1;
    $b = 2;
    $c = 3;
    function demo(){
    	global $a,$b,$c;
        echo '$a = '.$a;
        echo '<br>$b = '.$b;
        echo '<br>$c = '.$c;
    }
    demo();
    ?>

    看看输出结果为:

    $a = 1
    $b = 2
    $c = 3

    分析:

    global关键字的作用是:导入全局变量,利用global 变量1, 变量2, ...的形式把全局变量1, 变量2...导入到一个函数的局部范围内,就可以在函数内部使用在函数外部定义的全局变量了。

    使用 global 关键字需要注意一下几点:

    方法2:利用$GLOBALS超全局变量

    <?php
    $a = 1;
    $b = 2;
    $c = 3;
    function demo(){
        echo '$a = '.$GLOBALS['a'];
        echo '<br>$b = '.$GLOBALS['b'];
        echo '<br>$c = '.$GLOBALS['c'];
    }
    demo();
    ?>

    输出结果为:

    $a = 1
    $b = 2
    $c = 3

    分析:

    $GLOBALS是一种预定义变量(又叫超全局变量),是包含所有变量的全局组合数组,变量的名称就是数组的键,可以使用$GLOBALS['变量名']的形式来访问指定全局变量。只要是出现过的全局变量,就可以通过$GLOBALS这个数组取得。

    global和$GLOBALS的区别

    推荐学习:《PHP视频教程

    以上就是php全局变量在函数内不能使用怎么办的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php 全局变量 函数
    上一篇:php怎么将数字转换成二进制 下一篇:centos怎么查看是否安装了php
    线上培训班

    相关文章推荐

    • php怎么生成100个不同的随机数• php怎么不用第三个变量交换两个变量的值• php怎么使用setcookie()设置cookie永不过期• php中的错误控制操作符是什么• 深入解析PHP中的 "? :" 运算符,了解它的用法!

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网