PHP fourni un grand nombre de variables prédéfinies.
Cependant, beaucoup de ces variables ne peuvent pas être
présentées ici, car elles dépendent du serveur
sur lequel elles tournent, de la version du serveur, et de la
configuration du serveur, ou encore d'autres facteurs. Certaines
de ces variables ne seront pas accessibles lorsque PHP fonctionne
en exécutable.
Avertissement
En PHP 4.2.0 et plus récent, le jeu de variables prédéfinies qui sont
disponibles dans l'environnement global a changé. Les variables
d'entrées et de serveurs ne sont plus par défaut
placées dans le contexte d'exécution global. Elles sont placées dans
les tableaux superglobaux.
Vous pouvez toujours forcer l'ancien comportement de PHP en le configurant
avec register_globals à
On votre fichier php.ini.
Pour plus d'informations et d'explications sur ce changement, voyez
l'annonce de PHP 4.1.0 (en anglais).
Depuis la version 4.1.0, PHP fourni un jeu de tableaux
prédéfinis, contenant les variables du serveur (si possible), les
variables d'environnement et celle d'entrées. Ces nouveaux tableaux
sont un peut particuliers, car ils ont automatiquement globaux :
ils sont automatiquement disponibles dans tous les environnements
d'exécution, sans avoir à utiliser le mot réservé global.
Pour cette raison, ils sont dits 'auto-globaux' ou bien encore
'superglobaux' (il n'y a pas de mécanisme PHP pour créer de telles
variables. Les superglobales sont listées ci-dessous. Cependant, pour
connaître le détails de leur contenu, et une présentation approfondie
sur les variables prédéfinies PHP, et leur nature, reportez vous
à la section variables prédefinies.
Contient une référence sur chaque variable qui est actuellement disponible
dans l'environnement d'exécution global. Les clés de ce tableau sont les
noms des variables globales.
Les 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,
qui est maintenant obsolète, mais toujours là.
Les variables fournies par le protocole HTTP en méthode GET.
C'est la nouvelle version de l'ancienne variable $HTTP_GET_VARS
qui est maintenant obsolète, mais toujours là.
Les 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à.
Les variables fournies par le protocole HTTP, dans les cookies.
C'est la nouvelle version de l'ancienne variable $HTTP_COOKIE_VARS
qui est maintenant obsolète, mais toujours là.
Les 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
qui est maintenant obsolète, mais toujours là. Voir
Téléchargement par méthode POST,
pour plus d'informations.
Les variables fournies par l'environnement.
C'est la nouvelle version de l'ancienne variable $HTTP_ENV_VARS
qui est maintenant obsolète, mais toujours là.
Les variables fournies au script par n'importe quel mécanisme d'entrée
et qui ne doit recevoir une confiance limitée. Note : lorsque
vous exécutez un script en ligne de commande, cette variable ne
va pas inclure les variables argv
et argc. Elles seront présentes dans la variable
$_SERVER. La présence et la valeur des entrées
de ce tableau sont réglés par la directive
variables_order. Ce tableau
n'est l'évolution d'aucune variable d'avant PHP 4.1.0.
Les variables qui sont actuellement enregistrées dans la session attachée
au script. which are currently registered to a script's
session.C'est la nouvelle version de l'ancienne variable $HTTP_SESSION_VARS.
Voir le chapitre Sessions handling functions
pour plus d'informations.