スーパーグローバル — すべてのスコープで使用できる組み込みの変数
PHP の定義済み変数の中には "スーパーグローバル" というものがあります。 これは、スクリプト全体を通してすべてのスコープで使用可能な変数のことです。 関数やメソッドの内部からアクセスする際にも global $variable; などとする必要はありません。
スーパーグローバルには次のようなものがあります。
バージョン | 説明 |
---|---|
4.1.0 | スーパーグローバルが PHP に導入されました。 |
注意: 使用できる変数
デフォルトでは、すべてのスーパーグローバルが使用可能です。 ただし、それに影響を与える設定項目もあります。詳細は variables_order のドキュメントを参照ください。
注意: register_globals の扱い
非推奨の register_globals ディレクティブが on に設定されている場合は、 内部の変数もスクリプトのグローバルスコープで使用できるようになります。 たとえば $_POST['foo'] は $foo という名前でも使えるようになるということです。
関連情報については、FAQ の "register_globals の影響は?" を参照ください。
注意: 可変変数
スーパーグローバルは、関数やクラスメソッドの中の 可変変数 として使用することはできません。