静的変数とは何ですか?
静的変数 型指定子は静的です。
静的変数は静的記憶方式に属し、その記憶領域はメモリ内の静的データ領域です (記憶ユニットは静的記憶領域に割り当てられます)。この領域のデータは、システム全体にわたってこれらの記憶領域を占有します。 (プログラムの実行中は解放されません)、プログラム全体が終了するまでメモリアドレスは変化しないと考えることもできます。
静的変数はプログラムの実行中常に存在しますが、その範囲外で使用することはできません。
キーワード static が変数の前に追加されている限り、変数は静的変数になります。
php 静的変数の役割
1. 関数内の変数を変更します。静的変数は、関数が呼び出されている間、その値を維持します。
<?php function testStatic() { static $val = 1; echo $val."<br />";; $val++; } testStatic(); //output 1 testStatic(); //output 2 testStatic(); //output 3 ?>
プログラム実行結果:
1 2 3
2. クラス内の属性またはメソッドを変更します。
変更された属性またはメソッドには、クラス名を使用してアクセスできます。変更された属性がクラス属性の場合、値は保持されます。
<?php class Person { static $id = 0; function __construct() { self::$id++; } static function getId() { return self::$id; } } echo Person::$id; //output 0 echo "<br/>"; $p1=new Person(); $p2=new Person(); $p3=new Person(); echo Person::$id; //output 3 ?>
プログラムの実行結果:
0 3
3. クラス内で、メソッド内の変数を変更します。
<?php class Person { static function tellAge() { static $age = 0; $age++; echo "The age is: $age "; } } echo Person::tellAge(); //output 'The age is: 1' echo Person::tellAge(); //output 'The age is: 2' echo Person::tellAge(); //output 'The age is: 3' echo Person::tellAge(); //output 'The age is: 4' ?>
プログラムの実行結果:
The age is: 1 The age is: 2 The age is: 3 The age is: 4
PHP 関連の詳細については、php中文网 をご覧ください。
以上がPHPの静的変数の役割は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。