Chapitre 11 : Les superglobales en PHP
Maîtrisez les variables superglobales en PHP avec ce chapitre complet et détaillé pour accéder aux données essentielles de votre application.
PHP met à disposition plusieurs variables spéciales appelées superglobales. Elles permettent d'accéder facilement à des informations importantes comme les données envoyées par un formulaire, les cookies, la session, etc.
Les superglobales sont disponibles dans tout le script, peu importe l'endroit où elles sont appelées.
1. Liste des principales superglobales
$_GET: données envoyées par l'URL (méthode GET)$_POST: données envoyées par un formulaire (méthode POST)$_REQUEST: regroupe GET, POST et COOKIE$_SERVER: infos sur le serveur et l'environnement$_SESSION: données de session utilisateur$_COOKIE: données stockées dans les cookies$_FILES: fichiers envoyés via formulaire$_ENV: variables d'environnement$GLOBALS: toutes les variables globales du script
2. Exemple avec $_GET
Si l'URL est : page.php?nom=Jean&age=25
<?php
echo $_GET["nom"]; // Jean
echo $_GET["age"]; // 25
?>
echo $_GET["nom"]; // Jean
echo $_GET["age"]; // 25
?>
⚠️ Important : Ne faites jamais aveuglément confiance aux données venant de l'utilisateur. Vérifiez et sécurisez toujours ce qui vient de
$_GET ou $_POST.
3. Exemple avec $_POST
Formulaire HTML :
<form method="POST" action="traitement.php">
<input type="text" name="email">
<input type="submit" value="Envoyer">
</form>
<input type="text" name="email">
<input type="submit" value="Envoyer">
</form>
Dans traitement.php :
<?php
$email = $_POST["email"];
echo "Votre email est : " . $email;
?>
$email = $_POST["email"];
echo "Votre email est : " . $email;
?>
4. Autres superglobales utiles
$_SERVER
<?php
echo $_SERVER['HTTP_USER_AGENT']; // Navigateur utilisé
echo $_SERVER['REQUEST_METHOD']; // GET ou POST
echo $_SERVER['SCRIPT_NAME']; // Nom du script
?>
echo $_SERVER['HTTP_USER_AGENT']; // Navigateur utilisé
echo $_SERVER['REQUEST_METHOD']; // GET ou POST
echo $_SERVER['SCRIPT_NAME']; // Nom du script
?>
$_COOKIE et $_SESSION
<?php
// Cookie
setcookie("pseudo", "Ahmed", time() + 3600); // expire dans 1h
echo $_COOKIE["pseudo"];
// Session
session_start();
$_SESSION["connecte"] = true;
echo $_SESSION["connecte"];
?>
// Cookie
setcookie("pseudo", "Ahmed", time() + 3600); // expire dans 1h
echo $_COOKIE["pseudo"];
// Session
session_start();
$_SESSION["connecte"] = true;
echo $_SESSION["connecte"];
?>
5. À retenir
- Les superglobales sont des variables automatiques disponibles dans tous les scripts PHP
- Les plus importantes sont
$_GET,$_POST,$_SESSION,$_COOKIE,$_SERVER - Il faut toujours vérifier et sécuriser les données reçues de l'utilisateur
- Ces variables sont essentielles pour gérer les formulaires, les sessions, les connexions utilisateur, etc.