Tibor:
It's not a good idea to use $_ENV unless you are specifying an environmental variable. This is probably a better example that I found on another page in php.net
<?php
function test() {
$foo = "local variable";
echo '$foo in global scope: ' . $GLOBALS["foo"] . "\n";
echo '$foo in current scope: ' . $foo . "\n";
}
$foo = "Example content";
test();
?>
Les Superglobales
Les Superglobales — Les Superglobales sont des variables internes qui sont toujours disponibles, quelque soit le contexte
Description
Énormément de variables prédéfinies en PHP sont "superglobales", ce qui signifie qu'elles sont disponibles quelque soit le contexte du script. Il est inutile de faire global $variable; avant d'y accéder dans les fonctions ou les méthodes.
Les variables superglobales sont :
Historique
| Version | Description |
|---|---|
| 4.1.0 | Les superglobales sont introduites en PHP. |
Notes
Note: Disponibilité des variables
Par défaut, toutes les superglobales sont disponibles, et seules les directives de configuration peuvent les rendre indisponibles. Pour plus d'informations, reportez-vous à la documentation sur l'ordre des variables.
Note: Gérer la directive register_globals
Si la directive obsolète register_globals est définit à on, alors les simples variables seront également disponibles dans le contexte global du script. Par exemple, $_POST['foo'] existera également sous la forme $foo.
Pour plus d'informations, voir la FAQ intitulée "Comment la directive register_globals affecte-t-elle mes scripts ?"
Note: Variable variables
Les superglobales ne peuvent pas être utilisées comme variable variables dans une fonction ou une méthode d'une classe.
Les Superglobales
10-Oct-2008 03:51
06-Oct-2008 05:00
You can use superglobals to make your variables available everywhere without declaring them global.
<?php
$_ENV['mystring'] = 'Hello World';
$_ENV['myarray'] = array('Alpha', 'Bravo', 'Charlie');
function test() {
print $_ENV['mystring'];
print_r($_ENV['myarray']);
}
test();
?>
