5.3.2 PHP全局变量

PHP变量的范围

变量的范围

当主程序调用函数时,PHP 会暂时停止目前主要程序流程的运行,并传递必要的运算参数给目标函数使用,以执行函数的程序码片段。
在函数执行结束后,函数会回传执行结果所得的数值,并将执行流程转回原本主程序中断的地方,继续执行运作。

变量的能见度

所谓变量的能见度,意指变量在程序中的可作用范围。当一个变量执行赋值动作后,会随着声明局部的差异,而有不同的作用范围。大致上来说变量会依据声明的局部分为下列两种:局部变量和全局变量

局部变量(内部变量)
在函数之中声明的变量就是局部变量,并且该变量只有在函数范围之中才能加以使用。如果其它程序局部需要调用使用该变量值时,必须透过「return」指令,来将其传回至主程序区块以作后续处理。

<?php
    $a=0;
    function print_A(){ 
        $a = 3; //定义局部变量
        echo "在函数中显示局部变量 a 值: $a <p>";
        return $a; 
    }
    $b = print_A();
    echo "在函数外显示局部变量 b 值: $b <br>";
     echo $a; 
?>

•全局变量

–在函数范围之外所声明的变量就是全局变量。由于函数可以视为单独的程序片段,所以局部变量会复盖全局变量的能见度,因此在函数中并无法直接调用使用全局变量。
–函数中若要使用全局变量时,必须要利用global关键字定义目标变量,以告诉函数主体此变量为全局。

 <?php
       $A=“Hello !!”;         //定义全局变量
     function print_A() {     //定义函数 print_A()
 global $A;            //利用 global 关键字声明变量 A 为全局变量
            echo $A;
     }
        print_A();
        ?>

–也可以使用预定义的全局变量数组$GLOBALS.这是一个特殊变量在程序运行时自动创建。格式:echo $GLOBALS[“A”];

<?php
/*
    函数内部声明的变量, 只能在函数内部调用, 这就是--------局部变量
    函数的参数,就是一个局部变量, 声明成形成的, 可以在调用时,给值, 传值
    全局变量, 在函数外部声明的变量,可以在每个函数中使用。 (顺序)
    在函数内部如果需要使用函数外部的变量, 需要使用global关鍵字,将外部变量引入
 */
    $_POST['a']=100;
    $_GET['b']=300;
    function demo() {
    echo $_POST['a'];   
    }
    demo();
//  echo $name;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • PHP变量的范围 •变量的范围–当主程序调用函数时,PHP 会暂时停止目前主要程序流程的运行,并传递必要的运算参数...
    曹渊说创业阅读 834评论 0 1
  • 目录### 一、函数的定义二、自定义函数三、函数的工作原理和结构化编程四、PHP变量的范围五、声明及应用各种形式的...
    akon2016阅读 820评论 1 1
  • 函数的定义 函数是什么? 函数(function)是一段完成指定任务的已命名代码块。函数可以遵照给它的一组值或参数...
    dptms阅读 1,069评论 0 2
  • 现在想想还是很幸运的,因为报名时候,我错过了。 过后园长说可以再开放两个家庭的名额,要不要来,那还用说,立马说愿意...
    小辉510阅读 370评论 0 1
  • 多久了 我都没变 It's been a long time I haven't changed 爱你这回事 整整...
    cab1675阅读 369评论 0 0