Les variables superglobales

Les variables superglobales sont des variables un peu particulières pour trois raisons :

  • elles sont écrites en majuscules et commencent toutes, à une exception près, par un underscore (_). $_GET et $_POST en sont des exemples que vous connaissez ;
  • les superglobales sont des array car elles contiennent généralement de nombreuses informations ;
  • enfin, ces variables sont automatiquement créées par PHP à chaque fois qu'une page est chargée. Elles existent donc sur toutes les pages et sont accessibles partout : au milieu de votre code, au début, dans les fonctions, etc.

Pour afficher le contenu d'une superglobale et voir ce qu'elle contient, le plus simple est d'utiliser la fonction print_r, puisqu'il s'agit d'un array. Exemple :

Code : PHP 

1

2

3

4

5

<pre>

<?php

print_r($_GET);

?>

</pre>



Je vous propose de passer en revue les principales variables superglobales existantes. Nous ne les utiliserons pas toutes, mais nous aurons fait un petit tour d'horizon pour pouvoir nous concentrer ensuite sur les plus utiles d'entre elles.

  • $_SERVER : ce sont des valeurs renvoyées par le serveur. Elles sont nombreuses et quelques-unes d'entre elles peuvent nous être d'une grande utilité. Je vous propose de retenir au moins $_SERVER['REMOTE_ADDR']. Elle nous donne l'adresse IP du client qui a demandé à voir la page, ce qui peut être utile pour l'identifier.
  • $_ENV : ce sont des variables d'environnement toujours données par le serveur. C'est le plus souvent sous des serveurs Linux que l'on retrouve des informations dans cette superglobale. Généralement, on ne trouvera rien de bien utile là-dedans pour notre site web.
  • $_SESSION : on y retrouve les variables de session. Ce sont des variables qui restent stockées sur le serveur le temps de la présence d'un visiteur. Nous allons apprendre à nous en servir dans ce chapitre.
  • $_COOKIE : contient les valeurs des cookies enregistrés sur l'ordinateur du visiteur. Cela nous permet de stocker des informations sur l'ordinateur du visiteur pendant plusieurs mois, pour se souvenir de son nom par exemple.
  • $_GET : vous la connaissez, elle contient les données envoyées en paramètres dans l'URL.
  • $_POST : de même, c'est une variable que vous connaissez et qui contient les informations qui viennent d'être envoyées par un formulaire.
  • $_FILES : elle contient la liste des fichiers qui ont été envoyés via le formulaire précédent.

Vous connaissez déjà une bonne partie de ces variables superglobales, comme vous pouvez le constater. Je vous propose d'étudier plus en détail les sessions et les cookies. Avec ça nous aurons fait le tour des principaux moyens de transmettre des variables de page en page !

Créé avec HelpNDoc Personal Edition: Créer des documents d'aide facilement