Variable super globale en PHP : Guide complet des variables

Accueil PHP 8 Variable super globale en PHP : Guide complet des variables

La variable super globale est déclinée sous plusieurs formes. Les variables super globales en PHP sont un pilier fondamental du langage. Elles permettent d’interagir avec les données envoyées par les formulaires, les sessions, les cookies, les serveurs web, et bien plus encore.

Que vous soyez développeur débutant ou intermédiaire, comprendre et savoir utiliser les variables super globales en PHP est indispensable pour créer des sites web dynamiques et interactifs.

Dans ce tutoriel, nous allons vous guider pas à pas dans l’exploration de ces variables essentielles.

Comprendre ce que sont les variables super globales en PHP

Qu’est-ce qu’une variable super globale ?

Une variable super globale en PHP est une variable prédéfinie par le langage, accessible dans n’importe quel contexte, sans avoir besoin de la déclarer comme global ou de la passer en argument.

Cela signifie que vous pouvez les utiliser dans n’importe quelle fonction, classe ou fichier de votre projet PHP.

Les principales variables super globales en PHP sont les suivantes :

  • $_GET
  • $_POST
  • $_REQUEST
  • $_SERVER
  • $_FILES
  • $_ENV
  • $_COOKIE
  • $_SESSION
  • $_GLOBALS

1. $_GET – Récupérer les données de l’URL

La variable $_GET en PHP est utilisée pour récupérer les données passées dans l’URL. Elle est très utile pour transmettre des informations d’une page à une autre via des liens.

Exemple :

<!-- lien.html -->
<a href="page.php?nom=Alban&ville=Troyes">Voir les infos</a>
// page.php
echo $_GET['nom'];   // Affiche "Alban"
echo $_GET['ville']; // Affiche "Troyes"

Bon à savoir : les données envoyées via $_GET sont visibles dans la barre d’adresse du navigateur, donc pas sécurisées pour des informations sensibles.


2. $_POST – Transmettre des données par formulaire

$_POST est utilisé pour récupérer les données envoyées via un formulaire en méthode POST.

Exemple :

<form action="traitement.php" method="POST">
  <input type="text" name="email">
  <input type="submit">
</form>
// traitement.php
$email = $_POST['email'];
echo "Votre email : " . $email;

Contrairement à $_GET, les données ne sont pas visibles dans l’URL, ce qui rend $_POST plus approprié pour les données confidentielles.


3. $_REQUEST – Fusion de $_GET$_POST et $_COOKIE

La variable $_REQUEST est une super variable hybride : elle contient les données issues de $_GET$_POST et $_COOKIE.

Exemple :

$nom = $_REQUEST['nom'];

Cependant, son usage est déconseillé en production, car il peut entraîner des conflits et manque de clarté. Il est préférable d’utiliser $_GET ou $_POST selon le contexte.


4. $_SERVER – Informations sur le serveur et l’environnement

La variable $_SERVER contient des données fournies par le serveur, comme le nom du script, l’adresse IP, l’agent utilisateur, etc.

Exemple :

echo $_SERVER['REMOTE_ADDR']; // IP du clientecho $_SERVER['HTTP_USER_AGENT']; // Informations sur le navigateur
echo $_SERVER['PHP_SELF']; // Nom du script en cours

Cette variable est très utile pour faire des statistiques, de la sécurité ou du debugging.

Formation web et informatique - Alban Guillier - Formateur

Des formations informatique pour tous !

Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…

Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.

Découvrez mes formations Qui suis-je ?

5. $_FILES – Gérer les fichiers envoyés via un formulaire

Quand un utilisateur envoie un fichier via un formulaire HTML, $_FILES permet de le récupérer.

Exemple :

<form action="upload.php" method="POST" enctype="multipart/form-data">
  <input type="file" name="fichier">
  <input type="submit">
</form>
// upload.php
$fichier = $_FILES['fichier'];
echo $fichier['name']; // Nom du fichier

Vous pouvez ensuite déplacer ce fichier avec move_uploaded_file(). N’oubliez pas de vérifier l’extension et la taillepour sécuriser l’upload.


6. $_ENV – Accéder aux variables d’environnement

$_ENV contient les variables définies dans l’environnement du système ou du serveur, souvent via le fichier .env.

Exemple :

echo $_ENV['APP_ENV']; // "production", "development", etc.

Elle est peu utilisée directement, mais essentielle dans les frameworks modernes qui se basent sur des fichiers d’environnement (comme CodeIngiter).


Les cookies sont de petits fichiers stockés sur l’ordinateur de l’utilisateur. $_COOKIE permet d’y accéder.

Exemple :

// Définir un cookie
setcookie("nom_utilisateur", "Alban", time() + 3600);

// Accéder au cookie
echo $_COOKIE['nom_utilisateur'];

Attention : le cookie n’est disponible qu’à partir de la requête suivante (pas immédiatement après le setcookie()).


8. $_SESSION – Stocker des données de session

Les sessions permettent de mémoriser des informations d’un utilisateur pendant qu’il navigue sur votre site.

Exemple :

session_start();
$_SESSION['email'] = 'alban@example.com';

echo $_SESSION['email'];

C’est très utile pour la gestion d’authentification ou pour conserver des données d’un formulaire sur plusieurs pages. En savoir plus sur La sécurisation des Sessions PHP.


9. $_GLOBALS – Accès global à toutes les variables

$_GLOBALS est un tableau contenant toutes les variables globales disponibles dans le script.

Exemple :

$nom = "Alban";
function afficherNom() {
    echo $GLOBALS['nom'];
}
afficherNom(); // Affiche "Alban"

Cependant, son usage est souvent évité car il peut rendre votre code difficile à maintenir. Préférez les arguments de fonction ou les classes pour passer des valeurs.

Bonnes pratiques avec les variables super globales en PHP

  1. Toujours valider et filtrer les données provenant de $_GET$_POST, etc. Utilisez des fonctions comme htmlspecialchars()filter_input(), ou intval().
  2. Utilisez la méthode appropriée (GET pour afficher, POST pour modifier).
  3. Ne faites pas confiance aux utilisateurs : tout ce qui vient des variables super globales peut être falsifié.
  4. Séparez logique métier et affichage pour un code plus propre et maintenable.
Variable super globale en PHP

Les variables super globales en PHP sont des outils puissants que tout développeur web doit maîtriser. Elles permettent d’interagir avec les utilisateurs, les serveurs, et les données de manière fluide et efficace.

Dans ce tutoriel, vous avez découvert :

  • Le rôle et l’utilisation des 9 variables super globales en PHP
  • Des exemples pratiques adaptés aux débutants
  • Des conseils de sécurité et de bonnes pratiques

Allez plus loin avec le PHP :

Live on Twitch
  • 🔥 Vendredi 25 Avril 2025 >19h00

    HTML & SémantiqueStructure d'une page HTML