php学习笔记1

  • 1、定义在函数外部的就是全局变量,它的作用域从定义处一直到文件结尾。
  • 2、函数内定义的变量就是局部变量,它的作用域为函数定义范围内。
  • 3、函数之间存在作用域互不影响。
  • 4、函数内访问全局变量需要 global 关键字或者使用 $GLOBALS[index] 数组

在 php 中函数是有独立的作用域,所以局部变量会覆盖全局变量,即使局部变量中并定义没有全局变量相同的变量,也会被覆盖。如下:

1 php
2 $a=5;
3 $b=3;
4 function t()
5 {
6     echo $a-$b; // 输出 0
7 }
8 t();
9 ?>

要想在函数中直接使用全局变量可以通过 global 关键字声明或者通过 php 中自定义的 $GLOBALS 数组获取:

 1 php
 2 $a=5;
 3 $b=3;
 4 function t1()
 5 {  
 6     global $a,$b;
 7     echo $a-$b;  // 输出 2
 8 }
 9 t1();
10 
11 echo PHP_EOL;
12 
13 function t2()
14 {
15     echo $GLOBALS['a']-$GLOBALS['b'];  // 输出 2
16 }
17 t2();
18 ?>

 

你可能感兴趣的:(php学习笔记1)