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

首頁 > 語言 > PHP > 正文

php 函數中使用static變量

2024-09-04 11:48:19
字體:
來源:轉載
供稿:網友

本文章來簡單的介紹一下關于static變量在php函數中的用法,有需要了解的同學可參考一下.

實例代碼如下:

  1. function sendHeader($num$rtarr = null)  
  2. {      
  3. static $sapi = null;      
  4. if ($sapi === null)  
  5. {          
  6. $sapi = php_sapi_name();      
  7. }      
  8. return $sapi++; 

看PW源碼的時候發現setHeader()函數中使用static關鍵字,很奇怪,以前也沒這樣用過.

static用在函數里面,聲明一次變量后,如果再次調用這個函數將會在初始值延續,如$sapi這里將累加.

實例代碼如下:

  1. ?echo sendHeader(1)."<br>";  
  2. echo sendHeader(2)."<br>";  
  3. echo sendHeader(3)."<br>"
  4.  
  5. output: 
  6. ?apache2handler  
  7. apache2handles  
  8. apache2handlet 

和global有點類似,但不同的是作用域.static只能作用于此函數.

有點意思.需要深入研究.

實例代碼如下:

  1. class test  
  2. {  
  3. public static function a(){}  
  4. public function b(){}  
  5. }  
  6. $obj = new test; 

調用代碼

實例代碼如下:

  1. test::a();  
  2. $obj->a();  
  3. $obj->b(); 

變量范圍的另一個重要特性是靜態變量(static variable).靜態變量僅在局部函數域中存在,但當程序執行離開此作用域時,其值并不丟失

例子 使用靜態變量的例子

實例代碼如下:

  1. <?php 
  2.    function test() 
  3.    { 
  4.    static $w3sky = 0; 
  5.    echo $w3sky
  6.    $w3sky++; 
  7.    } 
  8.    ?> 

現在,每次調用 test() 函數都會輸出 $w3sky 的值并加一.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 枞阳县| 龙南县| 沅陵县| 五大连池市| 泰宁县| 诏安县| 汽车| 太和县| 呼玛县| 信宜市| 霸州市| 晋宁县| 山东省| 荆州市| 登封市| 龙南县| 尉犁县| 泊头市| 兴化市| 手游| 济源市| 运城市| 卢氏县| 固安县| 类乌齐县| 怀远县| 自治县| 山西省| 乐安县| 邹平县| 城口县| 贡山| 馆陶县| 镶黄旗| 武宣县| 花莲市| 平邑县| 旬邑县| 东明县| 桃江县| 泾川县|