次の例を見てください:
コードをコピー コードは次のとおりです:
function Test()
{
$w3sky = 0;
$w3sky ;
?>この関数は $w3sky の値を 0 に設定し、「0」を出力します。この関数が終了すると変数 $w3sky は存在しないため、変数 $w3sky を 1 つ増やしても効果はありません。このカウント値を失わないカウント関数を作成するには、次のように変数 $w3sky を静的として定義します:
:
function Test() {
static $w3sky = 0;echo $w3sky ; 🎜>}
?>
この関数は Test() を呼び出すたびに、$w3sky の値を出力し、1 ずつインクリメントします。
静的変数は、再帰関数を処理する方法も提供します。再帰関数は、それ自体を呼び出すメソッドです。再帰関数を作成する場合は、終了せずに無限に再帰する可能性があるため注意してください。必ず再帰を中止する方法を用意してください。次の単純な関数は、静的変数 $count を使用して再帰的に 10 までカウントし、いつ停止するかを決定します:
静的変数と再帰関数の例:
function Test() { static $count = 0; echo $count ;
if ($count)
$count--;
<🎜; >
注: 静的変数は、上の例に示すように宣言できます。これを宣言内の式の結果に代入すると、解析エラーが発生します。
静的変数の宣言の例:
コードをコピー
コードは次のとおりです:
function foo( ){
static $int = 0; // 正しい
static $int = 1 2 // 間違っています (式なので)
static $int = sqrt(121); // 間違っています (これも式です)
$int } ?>