ホームページ  >  記事  >  バックエンド開発  >  PHP の静的グローバル変数と通常のグローバル変数の違いは何ですか?

PHP の静的グローバル変数と通常のグローバル変数の違いは何ですか?

WBOY
WBOYオリジナル
2016-06-13 13:17:541010ブラウズ

PHP の静的グローバル変数と通常のグローバル変数の違いは何ですか?
for($i=1;$i<5;$i++) {
//$glo=1;
static $glo=1;
$glo++ ;
}
echo $glo;
?>
上記の例では、$glo はグローバルスコープであり、static キーワードがある場合とない場合では出力結果が異なることがわかります。静的グローバル変数を使用できますが、PHP マニュアルでは関数での静的変数の使用、クラスの静的メンバーのプロパティとメソッドについてのみ説明しています。インターネットで検索した情報は基本的に C、C++、JAVA の静的グローバル変数の説明であり、PHP に関するものはほとんどありません。これらの言語の静的変数が PHP と一致しているかどうかはわかりません。
現在、グローバル変数と静的変数はメモリの同じ領域に配置されることがわかっています。 PHPに静的グローバル変数の概念がある場合、それと通常のグローバル変数の違いは何ですか?誰か説明していただけますか?

-----解決策---------
違いはここです

static $glo=10;
echo $glo;//1
for($i=1;$i// echo $glo;
static $glo=1;
$glo++;
}
echo $glo;//5

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。