Introduction aux variables PHP

Dans cette partie, nous allons découvrir ce que sont les variables en PHP et apprendre à les manipuler.

 

Qu’est-ce qu’une variable ?

Une variable est un conteneur servant à stocker des informations de manière temporaire, comme une chaine de caractères (un texte) ou un nombre par exemple.

Le propre d’une variable est de pouvoir varier, c’est-à-dire de pouvoir stocker différentes valeurs au fil du temps.

En PHP, les variables ne servent à stocker une information que temporairement. Plus précisément, une variable ne va exister que durant le temps de l’exécution du script l’utilisant.

Ainsi, on ne va pas pouvoir stocker d’informations durablement avec les variables (pour cela, nous pourrons par exemple utiliser les fichiers, cookies ou les bases de données dont nous parlerons plus tard dans ce cours).

Note : Dans le début de ce cours, nous allons définir nous-mêmes les valeurs qui vont être stockées dans nos variables, ce qui n’a pas beaucoup d’intérêt en pratique. C’est donc tout à fait normal si vous ne voyez pas immédiatement le but d’utiliser des variables. Ici, vous pouvez retenir que les variables vont être vraiment intéressantes lorsqu’elles vont nous servir à stocker des données envoyées par les utilisateurs (via des formulaires par exemple) puisqu’on va ensuite pouvoir manipuler ces données.

 

Les règles de déclaration des variables en PHP

Une variable est donc un conteneur ou un espace de stockage temporaire qui va pouvoir stocker une valeur qu’on va lui assigner.

Nous allons pouvoir créer différentes variables dans un script pour stocker différentes valeurs et pouvoir les réutiliser simplement ensuite. Lorsqu’on crée une variable en PHP, on dit également qu’on « déclare » une variable.

On va pouvoir choisir le nom qu’on souhaite donner à chacune de nos variables. Cependant, il y a quelques règles à respecter et à connaitre lors de la déclaration d’une nouvelle variable :

  • Toute variable en PHP doit commencer par le signe $ qui sera suivi du nom de la variable ;
  • Le nom d’une variable doit obligatoirement commencer par une lettre ou un underscore (_) et ne doit pas commencer par un chiffre ;
  • Le nom d’une variable ne doit contenir que des lettres, des chiffres et des underscores mais pas de caractères spéciaux ;
  • Le nom d’une variable ne doit pas contenir d’espace.

De plus, notez que le nom des variables est sensible à la casse en PHP. Cela signifie que l’usage de majuscules ou de minuscules va créer des variables différentes. Par exemple, les variables $texte, $TEXTE et $tEXTe vont être des variables différentes.

Enfin, sachez qu’il existe des noms « réservés » en PHP. Vous ne pouvez pas utiliser ces noms comme noms pour vos variables, tout simplement car le langage PHP les utilise déjà pour désigner différents objets intégrés au langage. Nous verrons ces différents noms au fil de ce cours.

 

Déclarer une variable PHP en pratique

Pratiquons immédiatement et créons nos premières variables ensemble. Ici, nous allons créer deux variables $prenom et $age qui vont stocker respectivement une chaine de caractères et un nombre.

On déclare une variable en PHP et on lui attribue une valeur

Dans le script ci-dessus, nous déclarons donc nos deux variables $prenom et $age. On assigne ou on affecte la valeur Pierre à la variable $prenom. Cette variable va donc stocker la valeur Pierre. De la même façon, on assigne la valeur 28 à la variable $age.

Notez qu’il va falloir utiliser des guillemets ou des apostrophes pour stocker une chaine de caractères dans une variable. En revanche, nous n’en utiliserons pas pour assigner un nombre à une variable.

Il y a une chose que vous devez bien comprendre avec les variables : le signe = est dans ce cadre un opérateur d’affectation ou d’assignation et non pas un opérateur d’égalité comme cela est le cas au sens mathématiques du terme.

Ici, on assigne les valeurs Pierre et 28 à nos variables $prenom et $age mais ces variables ne sont pas « égales » à la valeur qu’elles contiennent.

En effet, vous devez bien comprendre que le propre d’une variable est de pouvoir varier, ce qui signifie qu’on va pouvoir assigner différentes valeurs à une variable au cours du script. Notre variable stockera toujours la dernière valeur qui lui a été assignée. Cette valeur écrasera la valeur précédente stockée par la variable.

 

Afficher et modifier le contenu d’une variable PHP

Nous allons pouvoir réaliser toutes sortes d’opérations avec nos variables. La plus basique d’entre elles consiste à afficher le contenu d’une variable PHP. Pour cela, nous allons généralement utiliser une instruction echo comme ceci :

<!DOCTYPE html>
<html>
    <head>
        <title>Cours PHP & MySQL</title>
        <meta charset="utf-8">
        <link rel="stylesheet" href="cours.css">
    </head>
    
    <body>
        <h1>Titre principal</h1>
        <?php
          $prenom = "Pierre";
          $age = 28;
                    
          echo $prenom;
        ?>
        
        <p>Un paragraphe</p>
    </body>
</html>

On déclare une variable en PHP et on affiche sa valeur avec echo

Ici, vous pouvez noter que nous n’avons pas besoin d’utiliser de guillemets ni d’apostrophes autour de notre variable pour en afficher le contenu avec echo : on va réserver cela seulement aux chaines de caractères, c’est-à-dire aux textes.

Comme je l’ai précisé plus haut, le propre d’une variable est de pouvoir stocker différentes valeurs dans le temps. Ainsi, on peut tout à fait affecter une nouvelle valeur à une variable. Notez cependant déjà qu’une variable PHP « classique » ne va pouvoir stocker qu’une valeur à la fois (nous verrons les différentes exceptions à cette règle au fil de ce cours).

<!DOCTYPE html>
<html>
    <head>
        <title>Cours PHP & MySQL</title>
        <meta charset="utf-8">
        <link rel="stylesheet" href="cours.css">
    </head>
    
    <body>
        <h1>Titre principal</h1>
        <?php
            $prenom = "Pierre";
            $age = 28; //$age stocke le nombre 28
            
            echo "La variable $age contient : ";
            echo $age;
            echo "<br>";
            
            $age = 29; //$age stocke le nombre 29
            echo "La variable $age contient : ";
            echo $age;
        ?>
        <p>Un paragraphe</p>
    </body>
</html>

On déclare une variable en PHP puis on modifie sa valeur et on affiche la valeur stockée dans la variable avec echo

Pour bien comprendre l’exemple précédent, vous devez savoir qu’ici notre script PHP est lu ou interprété linéairement, c’est-à-dire ligne par ligne dans l’ordre d’écriture.

Ici, notre variable $age commence par stocker le nombre 28. La première série d’instructions echo va afficher un texte, le contenu de la variable et créer un retour à la ligne.

Ensuite, on affecte une nouvelle valeur à notre variable $age. Notre nouvelle valeur, 29, va écraser l’ancienne. La variable $age va donc désormais stocker le nombre 29. La dernière instruction echo affiche la nouvelle valeur de la variable.

Note : Lorsqu’on utilise des guillemets, les variables déclarées au sein d’une chaine de caractères sont interprétées, ce qui signifie que c’est leur valeur qui va être affichée et non pas le nom de la variable dans notre cas.

Pour éviter ce comportement et afficher le nom de nos variables plutôt que la valeur qu’elles contiennent, nous allons devoir échapper le caractère $ avec un antislash comme on l’a fait ici ou utiliser les apostrophes plutôt que les guillemets.

 

Les opérateurs d’affection et de comparaison

Une nouvelle fois (et j’insiste car c’est très important), vous devez bien comprendre que le signe égal simple utilisé ci-dessus n’est pas un opérateur de comparaison mais bien un opérateur d’affection (ou d’assignation) : il sert à affecter une valeur à une variable.

Cela signifie que l’opérateur = ne représente pas l’égalité d’un point de vue mathématique.

L’égalité en termes de valeurs simples est symbolisée en PHP par le double signe égal : ==. L’égalité en termes de valeurs et de types de données, c’est-à-dire l’identité, va être représentée en PHP par le triple signe égal : ===.

En effet, nous allons voir plus tard dans ce cours que les variables peuvent stocker différents types de données : des chaines de caractères, des nombres entiers, des nombres décimaux, etc. En utilisant des guillemets ou des apostrophes, on indique que la valeur stockée par la variable est une chaine de caractères.

Ainsi, si j’écris $age = "28" par exemple, la variable $age stockera la chaine de caractères 28. Cette chaine de caractères va être égale en valeur au nombre 28 mais les types de ces deux valeurs vont être différents (la première valeur est une chaine de caractères, la seconde est un nombre entier). Les deux variables ne vont pas être égales d’un point de vue de l’identité. Nous aurons l’occasion de réexpliquer tout cela dans les prochains chapitres.

 

A quoi servent de manière concrète les variables PHP ?

Les variables vont être extrêmement utiles en PHP et cela dans de nombreuses situations. Par exemple, elles vont nous permettre de manipuler des données non connues à priori. En effet, imaginons par exemple que vous souhaitiez manipuler (afficher, stocker, etc.) des données récoltées via un formulaire qui sera rempli par vos visiteurs.

Nous ne connaissons pas les valeurs qui vont être envoyées par nos visiteurs à priori. Pour manipuler ces données nous allons utiliser les variables. Ici, nous allons donc créer un script qui va traiter les données envoyées par les utilisateurs. Les valeurs envoyées vont être stockées dans des variables et nous allons manipuler ces variables.

Ainsi, à chaque fois qu’un visiteur enverra le formulaire avec ses données, notre script se déclenchera et les données seront placées dans des variables prédéfinies. Le script en question sera créé de manière à manipuler ces variables et leur contenu pour les afficher, les stocker, etc.

Les variables vont également être un outil privilégié pour dynamiser notre site grâce à leur faculté de pouvoir stocker différentes valeurs. Imaginons ici que nous souhaitions afficher une horloge sur notre site.

Nous allons alors créer un script qui va recalculer toutes les secondes par exemple l’heure actuelle. Cette heure sera placée dans une variable $heure par exemple. Le script sera fait de telle sorte que le contenu de cette variable s’actualisera toutes les secondes (chaque seconde, la variable stockera une valeur actualisée qui sera l’heure actuelle) et affichera le contenu de cette variable.

Nous allons bien évidemment pouvoir utiliser les variables dans de nombreuses autres situations pour créer des scripts plus complexes. Cependant, il serait difficile à votre niveau actuel d’illustrer l’intérêt des variables en prenant appui sur une situation faisant appel à trop de connaissances hors de votre portée pour le moment.

Une nouvelle fois, pour le moment, faites-moi confiance et faîtes votre maximum pour comprendre au mieux chaque notion que je vous présente car elles vont nous être très utiles par la suite.

Laisser un commentaire