在看高手写的代码的时候,经常可以看到static与global,这两个关键字有什么用呢

static,翻译为“静态”

global,翻译为“全局”

static是用来申明一个静态变量,常用于含有循环计算的语句中,比如for

 

 
  
  1. <?php  
  2. function index(){  
  3.     static $phphubei = 0; //初始化静态变量  
  4.     $phphubei+=1;  
  5.     echo $phphubei.' ';  
  6. }  
  7. for($i=1;$i<10;$i++){  
  8.     index();  
  9. }  
  10. //输出 1-10  
  11. //如果不加static,输出10个1,因为循环执行的时候,每次都是从0开始加1,而无法保存  
  12. ?> 

在一个页面中,往往通过$申请一个全局变量在任何地方引用,但是在function中须要使用global申明引用,否则就会报错 

 
  
  1. <?php  
  2. $phphubei='1';  
  3. function index(){  
  4.     echo $phphubei;  
  5. }  
  6. index();  
  7. //上述语句会报错:Notice: Undefined variable: phphubei in D:\windowsoft\wamp\www\Gbook\1.php on line 4  
  8. ?> 

 正确的写法为

 
  
  1. <?php   
  2. $phphubei='1';  
  3. function index(){  
  4.     global $phphubei;  
  5.     echo $phphubei;  
  6. }  
  7. index();  
  8. //输出1  
  9. ?>