第二章 静态变量、成员和方法
2.1 静态变量
1.静态变量是只存在于函数作用域的变量,在函数执行完值不会丢失。
2.如下例:
function testing(){
static $a = 1;
$a *= 2;
echo $a."\n";
}
testing();
testing();
testing();
我们都知道变量$a是在函数中的局部变量,应该是随着函数testing()的创建而创建,随着testing()的消亡而消亡,每次调用testing(),都会给$a 重新初始化,这样其运行结果应该是 “2 2 2”,但因为将$a 声明为static变量,那么当下一次调用testing()时$a的值会“记忆”,其结果为"2 4 8".
3.不能将表达式的结果赋给静态变量。
2.2 类中静态元素的使用
1.在类中,static 的用法:1).定义静态成员 2).定义静态方法
2.self 表示的类本身。this 表示的是类的当前实例,如果基类中的方法被重写,想要调用基类中的方法可以用parent