PHP static靜態變數

2021-08-26 13:42:04 字數 761 閱讀 3578

php static靜態變數

php static靜態變數

變數範圍的另乙個重要特性是靜態變數(static variable)。靜態變數僅在區域性函式域中存在,但當程式執行離開此作用域時,其值並不丟失。看看下面的例子:

例子 演示需要靜態變數的例子

<?php

function test()

?>

本函式沒什麼用處,因為每次呼叫時都會將 $w3sky 的值設為 0 並輸出 "0"。將變數加一的 $w3sky++ 沒有作用,因為一旦退出本函式則變數 $w3sky 就不存在了。要寫乙個不會丟失本次計數值的計數函式,要將變數 $w3sky 定義為靜態的:

例子 使用靜態變數的例子

<?php

function test()

?>

現在,每次呼叫 test() 函式都會輸出 $w3sky 的值並加一。

靜態變數也提供了一種處理遞迴函式的方法。遞迴函式是一種呼叫自己的函式。寫遞迴函式時要小心,因為可能會無窮遞迴下去。必須確保有充分的方法來中止遞迴。一下這個簡單的函式遞迴計數到 10,使用靜態變數 $count 來判斷何時停止:

例子 靜態變數與遞迴函式

<?php

function test()

$count--;

}?>

注: 靜態變數可以按照上面的例子宣告。如果在宣告中用表示式的結果對其賦值會導致解析錯誤。

例子 宣告靜態變數

<?php

function foo()

?>

PHP static靜態變數

static靜態變數 rel noopener noreferrer php static靜態變數 北極熊 變數範圍的另乙個重要特性是靜態變數 static variable 靜態變數僅在區域性函式域中存在,但當程式執行離開此作用域時,其值並不丟失。看看下面的例子 例子 演示需要靜態變數的例子 fu...

PHP static區域性靜態變數和全域性靜態變數總結

靜態區域性變數的特點 1.不會隨著函式的呼叫和退出而發生變化,不過,儘管該變數還繼續存在,但不能使用它。倘若再次呼叫定義它的函式時,它又可繼續使用,而且儲存了前次被呼叫後留下的值2.靜態區域性變數只會初始化一次3.靜態屬性只能被初始化為乙個字元值或乙個常量,不能使用表示式。即使區域性靜態變數定義時沒...

靜態變數和非靜態變數

class string1 a和b編譯報錯,can not make a static referrence to no static filed s3,s4 分析 string s1 pingguo string s2 xiangjiao string s3 new string lizi str...