ホームページ > php教程 > php手册 > PHP変数スコープの概要

PHP変数スコープの概要

WBOY
リリース: 2016-06-13 11:56:47
オリジナル
951 人が閲覧しました

例:

コードをコピー コードは次のとおりです。


$a = 1;
include 'b.inc';
?>


ここで、変数 $a はインクルードされたファイル b.inc で有効になります。ただし、ユーザー定義関数では、ローカル関数スコープが導入されます。関数内で使用される変数はデフォルトでローカル関数のスコープに制限され、現時点ではローカル変数です。

PHP のグローバル変数は、関数で使用する場合はグローバルとして宣言する必要があります。
関数内で global を使用して宣言された変数はグローバル変数であり、関数の外で使用できます。注: 変数をグローバルに宣言する場合、変数に値を直接割り当てることはできません。最初に変数を宣言してから、値を割り当てる必要があります。

グローバル スコープでは、$GLOBALS を通じてグローバル変数にアクセスすることもできます。関数内のグローバル変数にアクセスするために global キーワードを使用する必要はありません。 $GLOBALS は連想配列であり、各変数は要素であり、キー名は変数名に対応し、値は変数の内容に対応します。 $GLOBALS はスーパーグローバル変数であるため、$GLOBALS はグローバル スコープ内に存在します。
定数は、変数のスコープに関係なく、どこでも定義してアクセスできます。

変数スコープのもう 1 つの重要な機能は、静的変数 (静的変数) です。静的変数はローカル関数スコープ内にのみ存在しますが、プログラムの実行がこのスコープを離れても、その値は失われません。静的変数は最初の呼び出し時にのみ初期化されます。宣言時に値を割り当てることはできますが、式の値にすることはできません。これを宣言内の式の結果に代入すると、解析エラーが発生します。

参照 (& が付いた変数またはオブジェクト) が静的変数に割り当てられる場合、その参照は静的に格納されず、関数が 2 回目に呼び出されたときに静的変数の値は記憶されません。同様に、参照 (& が付いた変数またはオブジェクト) がグローバル変数に割り当てられている場合、この変数の変更は関数の外部には影響せず、スコープは関数内のみになります。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート