Predefined variables
$GLOBALS
Predefined variables
PHP Manual

# Superglobals

Superglobals — Superglobals are built-in variables that are always available in all scopes

### Description

Several predefined variables in PHP are "superglobals", which means they are available in all scopes throughout a script. There is no need to do global $variable; to access them within functions or methods.

These superglobal variables are:

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

### Changelog

Version | Description
--- | ---
4.1.0 | Superglobals were introduced to PHP.

### Notes

> Note: Variable availability
> By default, all of the superglobals are available but there are directives that affect this availability. For further information, refer to the documentation for variables_order.

> Note: Dealing with register_globals
> If the deprecated register_globals directive is set to on then the variables within will also be made available in the global scope of the script. For example, $_POST['foo'] would also exist as $foo.
> For related information, see the FAQ titled "How does register_globals affect me?"

> Note: Variable variables
> Superglobals cannot be used as variable variables inside functions or class methods.

### See Also

- variable scope
- The variables_order directive
- The filter extension

Predefined variables
$GLOBALS
Predefined variables
PHP Manual