首页 > 代码库 > 静态变量、成员和方法

静态变量、成员和方法

静态变量

  静态变量是只存在于函数作用域的变量,不过,在函数执行完成以后,这种变量的值不会丢失,也就是说,在下一次调用这个函数时,变量仍然会记得原来的值.

  要将某个变量定义为静态的,只需要在变量前面加上static关键字即可.

function test(){    static $a = 1;    $a *= 2;    echo $a.‘<br/>‘;}test();test();test();//结果 2  4  8

  值得注意的是,变量的初始默认值为1,而这一赋值操作只会在变量第一次被初始化时发生.函数每次执行的过程中,这一操作不会被调用.

类中静态元素的使用

静态成员

  静态成员是一种类变量,可以把它看成是属于整个类而不是属于类的某个实例.与一般的实例变量不同的是,静态成员只保留一个变量值,而这个变量值对所有的实例都是有效的,也就是说,所有的实例共享这个成员.

技术分享
class MyObject{    public static $myStaticVar = 0;    function myfunc(){        self::$myStaticVar += 2;        echo self::$myStaticVar .‘<br/>‘;    }}$instance1 = new MyObject();$instance1->myfunc();$instance2 = new MyObject();$instance2->myfunc();//结果 2  4
View Code

 

静态变量、成员和方法