downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

$_COOKIE> <$_SESSION
[edit] Last updated: Fri, 17 May 2013

view this page in

$_ENV

$HTTP_ENV_VARS [Obsolète]

(PHP 4 >= 4.1.0, PHP 5)

$_ENV -- $HTTP_ENV_VARS [Obsolète]Variables d'environnement

Description

Un tableau associatif de variable passé au script courant, via la méthode d'environnement.

Cette variable est importée dans l'espace de nom global de PHP, depuis l'environnement dans lequel l'exécutable PHP fonctionne. De nombreuses valeurs sont fournies par le shell qui exécute PHP, et différents systèmes pouvant disposer de différents shell, même un début de liste serait ici impossible. Reportez-vous à la documentation de votre shell pour connaître une liste de variables pré-définies.

Les autres variables d'environnement incluent les variables CGI, placées ici, indépendamment du fait que PHP fonctionne en tant que CGI ou bien que module du serveur.

$HTTP_ENV_VARS contient les mêmes informations, mais n'est pas superglobale. (Notez que $HTTP_ENV_VARS et $_ENV sont des variables différentes et que PHP les traite comme tel.)

Historique

Version Description
4.1.0 Introduction de $_ENV, rendant obsolète $HTTP_ENV_VARS.

Exemples

Exemple #1 Exemple avec $_ENV

<?php
echo 'Mon nom d\'utilisateur est ' .$_ENV["USER"] . '!';
?>

En assumant que "yannick" exécute ce script

L'exemple ci-dessus va afficher quelque chose de similaire à :

Mon nom d'utilisateur est yannick !

Notes

Note:

Ceci est une 'superglobale', ou variable globale automatique. Cela signifie simplement que cette variable est disponible dans tous les contextes du script. Il n'est pas nécessaire de faire global $variable; pour y accéder dans les fonctions ou les méthodes.

Voir aussi



$_COOKIE> <$_SESSION
[edit] Last updated: Fri, 17 May 2013
 
add a note add a note User Contributed Notes $_ENV - [5 notes]
up
3
ewilde aht bsmdevelopment dawt com
4 years ago
When running a PHP program under the command line, the $_SERVER["SERVER_NAME"] variable does not contain the hostname. However, the following works for me under Unix/Linux and Windows:

<?php
if (isset($_ENV["HOSTNAME"]))
   
$MachineName = $_ENV["HOSTNAME"];
else if  (isset(
$_ENV["COMPUTERNAME"]))
   
$MachineName = $_ENV["COMPUTERNAME"];
else
$MachineName = "";
?>
up
2
gabe-php at mudbugmedia dot com
2 years ago
If your $_ENV array is mysteriously empty, but you still see the variables when calling getenv() or in your phpinfo(), check your http://us.php.net/manual/en/ini.core.php#ini.variables-order ini setting to ensure it includes "E" in the string.
up
2
php at isnoop dot net
3 years ago
If you wish to define an environment variable in your Apache vhost file, use the directive SetEnv.

SetEnv varname "variable value"

It is important to note that this new variable will appear in $_SERVER, not $_ENV.
up
1
david at davidfavor dot com
1 year ago
Comments for this page seem to indicate getenv() returns environment variables in all cases.

For getenv() to work, php.ini variables_order must contain 'E'.
up
0
anonymous
2 years ago
If $_ENV is empty because variables_order does not include it, it will be filled with values fetched by getenv().

For example, when calling getenv("REMOTE_ADDR"), $_ENV['REMOTE_ADDR'] will be defined as well (if such an environment variable exists).

 
show source | credits | stats | sitemap | contact | advertising | mirror sites