⚙️ | Variables prédéfinies
https://www.php.net/manual/fr/reserved.variables.php
https://www.php.net/manual/fr/language.variables.scope.php
En PHP, certaines variables prédéfinies sont disponibles à tout moment et facilitent la gestion des interactions entre le serveur, le client, et l'environnement d'exécution. Parmi ces variables, on trouve les superglobales et d'autres variables spécifiques.
Les superglobales
Les superglobales sont des tableaux associatifs qui contiennent des informations relatives à l'environnement d'exécution, aux requêtes HTTP, aux fichiers téléchargés, etc. Elles sont accessibles partout dans le script, sans besoin de les passer en argument.
$GLOBALS
Contient toutes les variables globales du script.
$_SERVER
Informations sur le serveur et l'environnement (ex. : $_SERVER['HTTP_HOST']
pour le nom de l'hôte).
$_GET
Contient les données envoyées via une requête HTTP GET (ex. : depuis une URL).
URL : http://example.com/page.php?nom=toto&age=30
echo "Nom : " . $_GET['nom'];
echo "Âge : " . $_GET['age'];
🖥️ Sortie
Nom : toto
Âge : 30
$_POST
Contient les données envoyées via une requête HTTP POST (ex. : depuis un formulaire).
<form method="post" action="/traitement.php">
<input type="text" name="prenom" placeholder="Votre prénom">
<input type="submit" value="Envoyer">
</form>
// Affiche le prénom envoyé via le formulaire
echo "Prénom : " . $_POST['prenom'];
$_FILES
Contient les fichiers téléchargés via un formulaire.
<form action="/upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="mon_fichier">
<input type="submit" value="Uploader">
</form>
// Pas d'erreur
if ($_FILES['mon_fichier']['error'] === UPLOAD_ERR_OK) {
$nom_du_fichier = $_FILES['mon_fichier']['name'];
$nom_temporaire = $_FILES['mon_fichier']['tmp_name'];
move_uploaded_file($nom_temporaire, "uploads/$nom_du_fichier");
}
// Une ou plusieurs erreurs
else {
echo "Erreur lors du téléchargement.";
}
$_COOKIE
Contient les cookies envoyés par le client.
setcookie('utilisateur', 'toto', time() + 3600);
if (isset($_COOKIE['utilisateur'])) {
echo 'Utilisateur : ' . $_COOKIE['utilisateur'];
}
🖥️ Sortie
Utilisateur : toto
$_SESSION
Les sessions permettent de conserver des informations d’un utilisateur entre différentes pages.
- session_start() : Doit être appelée pour initialiser la session.
- session_destroy() : Permet de détruire toutes les variables de session.
Exemple :
// Démarrer la session
session_start();
// Stocker des données dans la session
$_SESSION['utilisateur'] = 'toto';
// Accéder à la donnée
echo "Utilisateur : " . $_SESSION['utilisateur'];
// Détruire la session
session_destroy();
🖥️ Sortie
Utilisateur : toto
$_REQUEST
Combine les données de $_GET
, $_POST
, et $_COOKIE
.
$_ENV
Contient les variables d'environnement du serveur.
echo $_ENV['HOME'];
🖥️ Sortie
/home/toto
Les autres variables prédéfinies
$argc
Contient le nombre d'arguments passés au script via la ligne de commande (comme en C).
$argv
Contient un tableau des arguments passés via la ligne de commande (comme en C).