国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php靜態變量define,static,const

2024-05-04 21:49:28
字體:
來源:轉載
供稿:網友

靜態變量只存在于函數作用域內,也就是說,靜態變量只存活在棧中,一般的函數內變量在函數結束后會釋放,比如局部變量,但是靜態變量卻不會,就是說,下次再調用這個函數的時候,該變量的值會保留下來.

最簡單定義方法:define() 函數定義一個常量,常量類似變量,不同之處在于,在設定以后,常量的值無法更改,常量名不需要開頭的美元符號 ($) ,作用域不影響對常量的訪問 ,常量值只能是字符串或數字.

語法:define(name,value,case_insensitive)

  1. <?php 
  2. define("year","2012");  
  3. define("month","12");  
  4. define("date","21");  
  5. define("thing","doomsday");  
  6. echo year."-".month."-".date." ".thing;  
  7. ?> 

static 用于變量,聲明這個變量的存儲單元靜態分配,從程序運算開始到結束這個變量的存儲單元不變化,static常用于全局量,一是存在里面的值始終有效,不因進退出子程序數值消失,另外static的變量運算速度比非靜態分配的快.

  1. <?php 
  2. class foo { 
  3.    static $my_static = 5; 
  4.    public $my_prop = 'bla'
  5. print foo::$my_static; copyright dedecms  
  6. $obj = new foo; 
  7. print $obj->my_prop; 
  8. ?> 

const 是常量,即從程序運算開始到結束,數值不變的量,代碼如下:

  1. <?php    
  2. class say_const{    
  3. const charset=”中國”;    
  4. publice function say_hello(){    
  5. echo slef::charset;    
  6. }    
  7. }    
  8. $const1=new say_const()’    
  9. $const1->say_hello();    
  10. ?> 

輸出就是“中國”,下面一款完整的靜態變量,代碼如下:

  1. function write_file($file,$msg,$usecheck=5){ 
  2.  static $check=1;//這里用到了~ 
  3.  $f=@fopen($file,"a+b"); 
  4.  if($f){ 
  5.   if(flock($f,lock_ex)){ 
  6.    fwrite($f,$msg); 
  7.    flock($f,lock_un); 
  8.    fclose($f); 
  9.   }else
  10.    fclose($f); 
  11.    $check++; 
  12.    if($check<=$usecheck){ 
  13.     sleep(1);//暫停下程序,等其他進程釋放該資源 
  14.     write_file($file,$msg); 
  15.    }//開源軟件:Vevb.com 
  16.   } 
  17.  }else
  18.   $check++; 
  19.   if($check<=$usecheck){ 
  20.    sleep(1);//暫停下程序,等其他進程釋放該資源 
  21.    write_file($file,$msg); 
  22.   } 
  23.  } 
  24. }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临夏县| 南和县| 台中县| 保德县| 百色市| 葫芦岛市| 屏边| 合肥市| 左贡县| 平罗县| 普兰店市| 基隆市| 凤庆县| 永修县| 额尔古纳市| 台东县| 通渭县| 平谷区| 衡山县| 调兵山市| 巩义市| 山西省| 河北区| 西乌珠穆沁旗| 兰溪市| 分宜县| 全椒县| 太仓市| 宝应县| 新营市| 响水县| 合阳县| 中江县| 金华市| 云安县| 葫芦岛市| 开化县| 鞍山市| 沧州市| 盐津县| 汉源县|