静的変数
■ 静的変数
関数の中で定義されたローカル変数は、関すが呼び出されるたびに初期化されますので、関数の実行が終わった後に値を保持することができません。しかし、「static」というキーワードをつけて変数を定義すると、そのローカル変数は関数の実行が終わった後も値を保持できるようになります。 このような変数のことを「静的(static)変数」と呼びます。 <?php function test() { $a = 0; // 通常の変数 static $b = 0; // 静的変数 printf("\$a = %d, \$b = %d\n", ++$a, ++$b); } // header("Content-Type: text/plain; charset=EUC-JP"); for ($i = 0; $i < 10; $i++) { test(); } ?> <戻る
関数の中で定義されたローカル変数は、関すが呼び出されるたびに初期化されますので、関数の実行が終わった後に値を保持することができません。しかし、「static」というキーワードをつけて変数を定義すると、そのローカル変数は関数の実行が終わった後も値を保持できるようになります。 このような変数のことを「静的(static)変数」と呼びます。
<?php function test() { $a = 0; // 通常の変数 static $b = 0; // 静的変数 printf("\$a = %d, \$b = %d\n", ++$a, ++$b); } // header("Content-Type: text/plain; charset=EUC-JP"); for ($i = 0; $i < 10; $i++) { test(); } ?>
<戻る