mate1988 阅读(1139) 评论(0)

 

静态变量只存在于函数作用域内,也就是说,静态变量只存活在栈中。一般的函数内变量在函数结束后会释放,比如局部变量,但是静态变量却不会。就是说,下次再调用这个函数的时候,该变量的值会保留下来。
只要在变量前加上关键字static,该变量就成为静态变量了。
view sourceprint?
01
<?php
02
    function test()
03
    {
04
        static $nm = 1;
05
        $nm = $nm * 2;
06
        print $nm."<br />";
07
    }
08
     
09
    // 第一次执行,$nm = 2
10
    test();
11
    // 第一次执行,$nm = 4
12
    test();
13
    // 第一次执行,$nm = 8
14
    test();
15
?>
程序运行结果:
1
2
2
4
3
8
函数test()执行后,变量$nm的值都保存了下来了。

 

 


发表评论
切换编辑模式