定義済の変数
$GLOBALS
定義済の変数
PHP Manual

# スーパーグローバル

スーパーグローバル — すべてのスコープで使用できる組み込みの変数

### 説明

PHP の定義済み変数の中には "スーパーグローバル" というものがあります。 これは、スクリプト全体を通してすべてのスコープで使用可能な変数のことです。 関数やメソッドの内部からアクセスする際にも global $variable; などとする必要はありません。

スーパーグローバルには次のようなものがあります。

- $GLOBALS
- $_SERVER
- $_GET
- $_POST
- $_FILES
- $_COOKIE
- $_SESSION
- $_REQUEST
- $_ENV

### 変更履歴

バージョン | 説明
--- | ---
4.1.0 | スーパーグローバルが PHP に導入されました。

### 注意

> 注意: 使用できる変数
> デフォルトでは、すべてのスーパーグローバルが使用可能です。 ただし、それに影響を与える設定項目もあります。詳細は variables_order のドキュメントを参照ください。

> 注意: register_globals の扱い
> 非推奨の register_globals ディレクティブが on に設定されている場合は、 内部の変数もスクリプトのグローバルスコープで使用できるようになります。 たとえば $_POST['foo'] は $foo という名前でも使えるようになるということです。
> 関連情報については、FAQ の "register_globals の影響は?" を参照ください。

> 注意: 可変変数
> スーパーグローバルは、関数やクラスメソッドの中の 可変変数 として使用することはできません。

### 参考

- 変数のスコープ
- variables_order ディレクティブ
- filter 拡張モジュール

定義済の変数
$GLOBALS
定義済の変数
PHP Manual