Comment Ca Marche - Communauté informatique  
   
Accueil - Encyclopédie informatiqueTélécharger l'encyclopédieContribuer à cet article

PHP - Les variables d'environnement

Les variables d'environnement de PHP Encyclopédie


Notion de variable d'environnement

Les variables d'environnement sont, comme leur nom l'indique, des données stockées dans des variables permettant au programme d'avoir des informations sur son environnement. L'environnement, dans le cas du script PHP est :

  • Le serveur
  • Le client

Ces variables sont créées par le serveur à chaque fois que le script PHP est appelé, le serveur les lui fournit en paramètres cachés lors de l'exécution de l'interpréteur.

Elles permettent notamment d'avoir des informations sur le type de serveur, son administrateur, la date à laquelle le script a été appelé, l'adresse IP et le type de navigateur du client,...

Les variables d'environnement

On peut donc classer les variables d'environnement en deux catégories :

  • Les variables d'environnement dépendant du client
  • Les variables d'environnement dépendant du serveur

Les variables d'environnement dépendant du client

Variable d'environnement Description
$AUTH_TYPE Il s'agit de la méthode d'authentification qui a été utilisée par le client pour accéder au script PHP
$COMSPEC Location de l'interpréteur de commandes sur la machine (Sous Windows)
$CONTENT_TYPE Type de données contenu présent dans le corps de la requête. Il s'agit du type MIME des données
$DOCUMENT_ROOT Racine des documents sur le serveur
$DOCUMENT_URI Adresse du script PHP en relatif (à partir de la racine du serveur)
$HTTP_ACCEPT Types MIME reconnus par le serveur (séparés par des virgules)
$HTTP_ACCEPT_ENCODING Types d'encodage que le serveur peut réaliser (gzip,deflate)
$HTTP_ACCEPT_LANGUAGE Langue utilisée par le serveur (par défaut en-us)
$HTTP_CONNECTION Type de connexion ouverte entre le client et le serveur (par exemple Keep-Alive)
$HTTP_HOST Nom d'hôte de la machine du client (associée à l'adresse IP)
$HTTP_REFERER URL de la page qui a appelé le script PHP
$HTTP_USER_AGENT Cette variable permet d'avoir des informations sur le type de navigateur utilisé par le client, ainsi que son système d'exploitation. Voici quelques exemples de User-Agents :
  • Mozilla/4.0 (compatible;
    			 MSIE 5.01;
    			 Windows NT;
    			 TUCOWS Network)
  • Mozilla/4.7 [en] (X11;
    			 I;
    			 Linux 2.2.14-15mdk i686)
$LAST_MODIFIED Date et heure de dernière modification du fichier
$PATH Il s'agit du chemin d'accès aux différents répertoires sur le serveur
$PATH_INFO Il s'agit du chemin d'accès au script PHP en relatif (de la racine du serveur jusqu'au script PHP)
$PHP_SELF Nom du script PHP
$REDIRECT_STATUS Il s'agit de l'état de la redirection (echec ou succès)
$REDIRECT_URL Il s'agit de l'URL vers laquelle le navigateur du client a été redirigé
$QUERY_STRING Il s'agit de la partie de l'URL (ayant servi à accéder au script PHP) située après le point d'interrogation. C'est de cette manière que sont transmises les données d'un formulaire dans le cas de la méthode GET
$REMOTE_ADDR Cette variable contient l'adresse IP du client appelant le script CGI
$REMOTE_PORT Cette variable permet de savoir le port sur lequel la requête HTTP a été envoyée au serveur
$SCRIPT_FILENAME Chemin d'accès complet au script PHP
  • Sous windows, il sera de la forme :
    c:/php/php.exe
$SCRIPT_NAME Chemin d'accès relatif (par rapport au chemin d'accès à la racine web ($DOCUMENT_ROOT)) au script PHP

Les variables d'environnement dépendant du serveur

Variable d'environnement Description
$DATE_GMT Date actuelle au format GMT
$DATE_LOCAL Date actuelle au format local
$DOCUMENT_ROOT Racine des documents Web sur le serveur
$GATEWAY_INTERFACE Version des spécifications CGI utilisées par le serveur
$HTTP_HOST Nom de domaine du serveur
$SERVER_ADDR Adresse IP du serveur
$SERVER_ADMIN Adresse de l'administrateur du serveur
$SERVER_NAME Nom donné au serveur en local
$SERVER_PORT Numéro de port associé au protocole HTTP sur le serveur
$SERVER_PROTOCOL Nom et version du protocole utilisé pour envoyer la requête au script PHP
$SERVER_SOFTWARE Type (logiciel) du serveur web
  • Pour un serveur Apache sous Unix :
    Apache/1.3.2 (Unix) PHP/3.0.5
  • Pour un serveur Apache sous Windows :
    Apache/1.3.2 (Win32) PHP/3.0.5

Affichage des variables d'environnement

Il est possible de créer un script permettant de visualiser l'ensemble des variables d'environnement.

La première façon consiste à utiliser la fonction phpinfo() qui affiche toute seule un tableau récapitulatif des paramètres du serveur et de l'intepréteur PHP, ainsi qu'un tableau des variables d'environnement

<?
phpinfo();

?>
PHP fournit la fonction getenv() permettant de retourner la valeur de la variable d'environnement passée en paramètre :
<?
echo getenv("HTTP_USER_AGENT");

?>
Enfin il est possible de définir des variables d'environnement :
<?
echo putenv("MA_VARIABLE=mavaleur");

?>

Trucs & astuces pertinents trouvés dans la base de connaissances

01/01 03h06 Notice: Undefined index: (Langages)
29/12 16h39 Afficher facilement le code php/xhtml de vos pages (Webmaster)
28/12 00h03 Récupérer login et mot de passe passés par un .htaccess (PHP)
08/12 22h42 Les ressemblances à ne pas confondre (PHP)
02/12 16h02 Vérifier une adresse électronique (format du mail) (PHP)
22/11 23h51 Rediriger sur une autre page (redirection) (PHP)
18/11 01h10 Fonction mail() (PHP)
11/11 01h39 Coloration syntaxique dans vos pages web (Webmaster)
04/11 21h04 Création environnement OpenSSH-CHROOT (Linux)
27/10 00h14 Transformer une URL en lien hypertexte cliquable (PHP)
PHP environnement Plus d'astuces sur « PHP environnement »

Discussions pertinentes trouvées dans le forum

27/08 10h21 php variables environnement [PHP] Variables d'environnement Webmastering 27/08 12h20->Mohammad2
03/06 16h59 var. environnement inconnu php var. d environnement inconnu en php! Webmastering 03/06 16h59->chmanu0
23/01 15h59 variable environnement php Variable environnement PHP Webmastering 23/01 15h59->Sylvain0
20/01 16h24 php envoi formulaires mail [php] envoi de formulaires par mail Webmastering 09/02 17h19->Ssylvainsab15
26/01 15h56 boucles imbriquées php Problème de boucles imbriquées en PHP Développement 26/01 17h38->hellnino5
27/10 11h14 php checkbox php checkbox Webmastering 06/12 16h28->ahmedkhan842
11/07 21h43 php free Pb PHP chez free Webmastering 16/07 22h32->HDU37
15/03 10h48 hebergement php mysql Hebergement php MySQL Webmastering 15/01 18h00->geo36
09/02 11h01 php mysql recupération données [PHP/MYSQL]recupération de données... Webmastering 06/02 19h01->Derbel35
01/07 15h03 php formulaire get [PHP]Pb formulaire GET Webmastering 01/07 18h07->luckyluke4410033
Discussion fermée Problème résolu PHP environnement Plus de discussions sur « PHP environnement »

Ce document intitulé « PHP - Les variables d'environnement » issu de l'encyclopédie informatique Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.