PHP局部变量与局部作用域

在 PHP 中,全局变量不能直接在函数内部使用;而局部变量也不能直接在函数外部使用。当然这也不是绝对的,通过一些方法还是可以实现在函数内调用全局变量、在函数外调用局部变量的,这些我们会在后面的学习中介绍。

局部变量与局部作用域

局部变量就是在函数的内部定义的变量,它只能在定义它的函数内使用。局部变量会在函数调用结束时自动销毁。



【示例】下面定义一个名为 example 的函数,并在函数内部定义一个局部变量 a,然后分别在该函数内部及函数外部尝试输出变量 a 的值,具体代码如下:


  1. <?php
  2. function example(){
  3. $a = "C语言中文网"; // 在函数内定义变量 a
  4. echo "局部变量 a 的值为:".$a."<br>";
  5. }
  6. example();
  7. if($a){ // 在函数外部调用 $a,如果 $a 存在则会打印下面的内容
  8. echo "在函数外部调用函数内的局部变量 a,其值为:".$a;
  9. }
  10. ?>

运行结果如下:

局部变量 a 的值为:C语言中文网

通过运行结果可以看出,在函数外部并不能调用函数内部定义的局部变量,因为局部变量 $a 的作用域是定义它的 example() 函数,在函数以外的地方无法使用。 在本例中只要了解局部变量的使用方法及意义即可,函数相关内容我们会在后面详细讲解。

全局变量与全局作用域

全局变量就是定义在所有函数以外的变量,其作用域是当前源码的任何地方,但是在函数内部是不可用的。在程序运行期间全局变量会一直存在,只有程序结束运行时才会被销毁。 【示例】定义一个全局变量 a,并分别在函数内部和外部输出全局变量的值,具体代码如下:


  1. <?php
  2. $a = "C语言中文网"; // 在函数外部定义全局变量 a
  3. function example(){
  4. if($a){
  5. echo "在函数内部调用全局变量 a,其值为:".$a;
  6. }
  7. }
  8. example();
  9. echo "在函数外部调用全局变量 a,其值为:".$a;
  10. ?>

运行结果如下:

在函数外部调用全局变量 a,其值为:C语言中文网

通过运行结果可以看出,在函数内部并没有成功调用到 $a,但是在函数外部可以。

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章