1.全局变量 在函数外部定义的变量, global关键字用于访问函数内的全局变量
2.局部变量 在函数内部定义的变量
下面看一下具体例子吧:
1 $a = 100; 2 function test() { 3 $b = 200;//局部变量 4 echo "访问局部变量, \$b是$b<hr>"; 5 global $a;//如果在函数内部要访问外部的全局变量, 需要使用global声明 6 echo "访问全局变量, \$a是$a<hr>"; 7 } 8 test();
输出结果:
3.静态变量 被static修饰的变量. 通常, 当函数完成执行后, 会删除所有变量. 但有时候我们需要不删除某个局部变量,使用static关键词. 每当函数被调用时, 这个变量所储存的信息都是函数最后一次被调用时所包含的信息.
1 function test() { 2 static $a = 10; 3 $a += 5; 4 echo $a . "<hr>"; 5 } 6 echo "第一次输出"; 7 test();//第一次调用变量a刚定义, 值为10 8 echo "第二次输出"; 9 test();//第二次调用时, 变量a之前已经有值15了, 不会重新定义, 直接使用 10 echo "第三次输出"; 11 test();
输出结果: