Variables PHP superglobales et Register_Globals
PHP a un type spécial de variable qui s'appelle un superglobal. La raison pour laquelle ces variables sont spéciales est qu'elles sont automatiquement disponibles pour tout programme PHP sans que le programmeur les crée ou les définisse dans son programme. Vous pouvez les considérer comme des variables "intégrées".

La façon dont vous accéderez à ces variables diffère selon que register_globals est activé ou désactivé sur votre serveur. Avant PHP version 4.2, register_globals était activé par défaut. Cependant, pour des raisons de sécurité; ce paramètre est désormais désactivé par défaut (version 4.2+). Bien sûr, il appartient aux personnes qui exécutent votre serveur de décider de remplacer le paramètre par défaut et d'activer register_globals. La façon la plus simple de tester votre propre serveur est d'utiliser phpinfo (). Vous aurez probablement un lien vers cette page Web dans la zone administrative de votre site Web. Sur cette page Web, vous trouverez la section Configuration PHP Core qui contient ces informations.

Comme mentionné ci-dessus, vous accéderez aux superglobaux différemment selon le paramétrage de votre serveur. Pour la nouvelle configuration du serveur, les superglobaux ont reçu de nouveaux noms. Si votre serveur a toujours l'ancien paramètre, il serait préférable de commencer à utiliser les nouveaux noms de toute façon. Si vous utilisez ces nouveaux noms, vous pouvez être sûr que vos programmes fonctionneront sous les deux configurations de serveur. Cependant, ce n'est pas le cas pour les anciens noms. Ils ne fonctionneront que pour l'ancienne configuration de serveur. Le tableau ci-dessous montre les noms anciens et nouveaux et une description des superglobaux. Notez que les noms de ces superglobales sont en majuscules.

NouveauVieuxLa description
$ _GET $ HTTP_GET_VARS Ce superglobal contient les variables envoyées au programme par la méthode get comme une chaîne de guery.
$ _POST $ HTTP_POST_VARS Cette superglobale contient les variables envoyées au programme par la méthode post.
$ _COOKIE $ HTTP_COOKIE_VARS Cette superglobale contient les variables disponibles au programme à partir d'un cookie.
$ _SESSION $ HTTP_SESSION_VARS Cette superglobale contient les variables enregistrées par le programme via une session.
$ _FILES $ HTTP_POST_FILES Cette superglobale contient les variables disponibles à partir d'un téléchargement de fichier.
$ _ENV $ _HTTP_ENV_VARS Cette superglobale contient les variables disponibles dans l'environnement du serveur.
$ _REQUEST -- Cette superglobale contient les variables envoyées à un programme par n'importe quel type d'entrée utilisateur. Il s'agit du type de superglobale le plus général ou le plus universel.
$ _SERVER -- Ce superglobal contient des informations sur le serveur telles que les chemins d'accès aux fichiers.





Instructions Vidéo: web variables($_GET and $_POST) (Mai 2024).