Variables d’environnement

Les tableaux super globaux de PHP

Maintenant que l'on a parlé des tableaux en détail, il est possible de s'intéresser aux tableaux super globaux de PHP.

PHP fourni un grand nombre de variables prédéfinies. En voici une liste tirée du manuel PHP qui va probablement vous servir :

$GLOBALS : Contient une référence sur chaque variable qui est disponible dans l'environnement d'exécution global. Les clés de ce tableau sont les noms des variables globales.

$_GET :C'est le tableau des variables fournies par le protocole HTTP en méthode GET. $_GET a remplacé $HTTP_GET_VARS.

$_POST : C'est le tableau des variables fournies par le protocole HTTP en méthode POST. C'est la nouvelle version de l'ancienne variable $HTTP_POST_VARS qui est maintenant obsolète, mais toujours là.

$_COOKIE : C'est le tableau des variables fournies par le protocole HTTP, dans les cookies. C'est la nouvelle version de l'ancienne variable $HTTP_COOKIE_VARS.

$_FILES :C'est le variables fournies par le protocole HTTP, suite à un téléchargement de fichier. C'est la nouvelle version de l'ancienne variable $HTTP_POST_FILES.

$_ENV : Les variables fournies par l'environnement. C'est la nouvelle version de l'ancienne variable $HTTP_ENV_VARS.

$_REQUEST : Les variables fournies au script par n'importe quel mécanisme d'entrée et qui ne doit recevoir une confiance limitée.

$_SESSION : Les variables qui sont actuellement enregistrées dans la session attachée au script. C'est la nouvelle version de l'ancienne variable $HTTP_SESSION_VARS.

Afficher les éléments d'un tableau super globaux

Pour afficher les éléments de chaque tableau, vous pouvez utiliser la fonction print_r en mettant le tableau en paramètre comme dans l'exemple suivant.

<?php
echo "<pre>";
print_r($GLOBALS); //affiche le nom des super globaux
echo "</pre>";
?>

 

La variable d'environnement $_SERVER

$_SERVER est un tableau des variables fournies par le serveur web, ou bien directement liées à l'environnement d'exécution du script courant. C'est la nouvelle version de l'ancienne variable $HTTP_SERVER_VARS.

Le tableau $_SERVER
Variable Utilité Affichage
$_SERVER['REQUEST_METHOD'] La méthode d'appel POST
$_SERVER['SERVER_NAME'] Nom du serveur localhost
$_SERVER['SERVER_ADMIN'] L'email de l'administrateur du serveur email@domaine.tld
$_SERVER['SERVER_ADDR'] L'Adresse IP du serveur 195.14.0.256
$_SERVER['QUERY_STRING'] Les paramètres indiquées à votre script url=toto.html&id=234
$_SERVER['REMOTE_PORT'] Port HTTP de la requête 80
$_SERVER['REMOTE_ADDR'] Adresse IP de l'internaute 88.101.2.255
$_SERVER['REQUEST_URI'] Chemin du script /exemple.php
$_SERVER['PATH_TRANSLATED'] Chemin physique (complet) du script /home/www/domain.fr/example.php
$_SERVER['HTTP_USER_AGENT'] User agent du navigateur du client Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1) Gecko/20061010 Firefox/2.0
$_SERVER['HTTP_REFERER'] L'URL de la page d'où provient l'internaute https://oseox.fr/exemple.php
$_SERVER['HTTP_HOST'] Le nom de domaine où est exécuté le script example.fr
$_SERVER['HTTP_ACCEPT_LANGUAGE'] Langue acceptée par le navigateur de l'internaute fr
$_SERVER['DOCUMENT_ROOT'] Adresse de la racine du serveur /var/www/exemple.fr/

A propos de l'auteur

Nicolas Galle

Nicolas Galle est développeur web sénior pour l'agence SEO Aseox.