Les variables PHP



      Une variable est un conteneur utilisé pour renfermer une certaine information, pas nécessairement numérique. Elle a un nom. Par exemple, la variable $age peut contenir le nombre 12.

Ecriture des noms de variables

      Voici quelques règles de base à respecter pour le nom d'une variable :
  1. Tous les noms de variable doivent commencer par le caractère dollar ($)
  2. A la suite de ce $, on ne peut trouver qu'une lettre ou un souligner (_). Jamais de chiffre
  3. Un nom de variable peut compter n'importe quel nombre de caractères.
  4. Un nom de variable peut comporter des lettres, des chiffres ou des souligner (_)
  5. Dans un nom de variable, PHP tient compte de la casse. $Toto et $toto représentent deux variables distinctes.
[ TOP ]



Affectation d'une valeur à une variable

      Une variable peut contenir un nombre un ou chaîne de caractères. On range de l'information dans une variable au moyen de l'opérateur d'affectation : le signe égal (=) $age=12; $nom="Martin"; Pour affiche à l'utilisateur le contenu de la variable utiliser cette instruction : echo $age; <p> Vous avez < ? echo $age? > ans</p> [ TOP ]



Supprimer une variable

      Pour vous débarasser d'une variable. Il faut utiliser une fonction spécialisée de php et écrire : unset($age) [ TOP ]



Les Tableaux de variable

      Dans un tableau(array en anglais), on peut ranger un ensemble de variable ordinaires(dites scalaires) sous un nom unique. C'est un excellent moyen de conserver un groupe de variables de même nature ou concernant le même objet. Par exemple, vous pouvez conserver dans un tableau trois éléments concernant des chemises : leur taille, leur couleur, et leur prix, et appeler le tableau qui les contientdra $chemiseInfo. Ce tableau, vous pourrez ensuite le manipuler de diverse façons. Le trier, par exemple.


Création d'un tableau

      La façon la plus simple de créer un tableau est d'ajouter une paire de crochet à la suite d'un nom de variable et de lui affecter une valeur. Pour créer un tableau contenant les différents types d'animaux du premier exemple, on pourrait écrire : $animaux[0]= "Dragon";       Dès lors, il existe un tableau $animaux contenant pour l'instant la valeur Dragon

      De même qu'on écrit un paire de parenthèses à droite du nom d'une fonction pour indiquer qu'il s'agit d'un nom de fonction, on a l'habitude d'écrire une paire de crochet à droite d'un nom de tableau pour marquer qu'il s'agit d'un tableau et non d'une variable scalaire(ordinaire).

      Pour ajotuer d'autre valeurs dans ce tableau, on peut écrire : $animaux[1]="chat"; $animaux[2]="Chien";       Un tableau peut être considéré comme une liste de paires de clés et de couleurs. Dans l'exemple que nous venons de donner, les clés sont des nombres (0,1,2). Plus simplement, on peut écrire : $animaux[]="dragon"; $animaux[]="chat"; $animaux[]="chien";       En l'absence d'indice(le nombre placé entre crochet), la première valeur adoptée est 0 et les valeurs suivantes sont les entiers consécutifs 1,2,3... Si, ensuite, on écrit : echo $animaux[1]; la valeur suivante sera affichée : chat       Au lieu de donner des valeurs numériques aux indices, on peut leur attribuer des noms écrits sous forme de chaînes de caractères, comme dans l'exemple suivant qui concerne une liste des chef de département : $chef["president"]="Martin"; $chef["secretaire"]="Manon"; $chef["adjoint"]="Eric"; secretaireest ici la clé du second élément du tableau $chef[] et la valeur qui lui correspond est Manon.

      Il existe un moyen encore plus simple de créer et de le garnir de quelque valeur : $chef=array("president"=>"Martin", "secretaire"=>"Manon", "adjoin"=>"Eric");

[ TOP ]

Suppression d'élément dans un tableau

      Pour supprimer un élément d'un tableau. Il ne suffit pas de lui donner la valeur() (dansle cas d'un tableau de valeur numérique) ou "" (dans le cas d'un tableau de chaîne de caractères), il faut utiliser la fonction native unset() que nous avons vu plus haut : unset($animaux[1]);

Tri de Tableau

     ¨ Trier un tableau signifie réordonner son contenu selon un certain critère, par exemple, en ordre alphabétique ascendant. Pour cela, PHP propose plusieurs fonctions. La plus simple est sort() sort($animaux);       Cette fonction trie le tableau selon les valeurs qu'il contient etréassigne de nouvelles valeurs aux clés selon le résultat du tri. S'il s'agit d'un tableau de chaîne de caractère, celles dont l'initiale est un chiffre apparaîtron en tête, suivies par celles dont l'initiale est une majuscule. $animaux = array("dragon","chat" ,"chien"); Après l'instruction sort($animaux)l le tableau contiendra : $animaux[0]="chat"; $animaux[1]="chien"; $animaux[2]="dragon"; sort($chef); $chef=array("president"=>"Martin", "secretaire"=>"Manon", "adjoin"=>"Eric"); $chef["adjoin"]="Eric"; $chef["secretaire"]="Manon"; $chef["President"]="Martin"; Le tri est alors effectué sur la valeur de la variable de tableau.


Fonction de triRôle
sort($tableau)Tri par valeur en assignant de nouvelles valeurs au clés.
asort($tableau)Tri par valeurs, les clés étant conservé
rsort($tableau)Tri par valeurs en ordre inverse, en assignant de nouvelles valeurs aux clés.
arsort($tableau)Tri par valeurs en ordre inverse, les clés étant conservées.
ksort($tableau)Tri sur les clés
krsort($tableau)Tri en ordre inverse les clés
usort($tableau, fonc)Tri au moyen de la fonction utilisateur fonc()


[ TOP ]



Extraction de valeurs à partir d'un tableau

      Vous pouvez accéder directement à n'importe quelle valeur d'un tableau en écrivant, par exemple : $Chef_Eric = $Chef["adjoin"]; Ce qui affichera : Eric       Dans un echo, si le nom du tableau se trouve a l'intérieur d'une autre chaîne de caractères, vous devez la placer entre une paire d'accolade : echo "Le chef du bureau est {$chef['adjoin']}<br>";       Vous pouvez extraire une seule fois plusieurs valeurs d'un tableau au moyen de l'instruction list qui permet de les ranger dans une suite de variable scalaires $infoC = array ("ZL", "bleu", 12.0); sort($infoC); list($valeur1, $valeur2) = $infoC; Echo $valeur1."<br>".$valeur2."<br>"; ce qui affichera : XL bleu       En effet,"XL" commence par une majuscule, laquelle a priorité sur l'initiale bas de casse de "bleu", à la suite du tri par la fonction sort().

      Dans certain cas vous vous intéressez aux clés, non aux valeurs, comme dans l'exemple suivant : $InfoC = array("taille"=>"XL", "couleur"=>"bleu", "prix"=>"12.0"); $valeur = $InfoC['taille']; $cle = key($InfoC); echo "$cle : $valeur<bR>"; Vous verrez afficher : taille : XL       Vous pouvez extraire toutes les valeurs d'un tableau au moyen de la fonction extract(). Chaque valeur est recopiée dans une variable ayant pour nom la valeur de la clé précédée du caractère $. Par exemple, les instructions qui suivent extraient toutes les informations du tableau $infoC et les affichent : extract($InfoC); echo "taille : $taille<br>couleur : $couleur<br>Prix : $prix<br>"; Ce qui affiche : taille : XL couleur : bleu prix : 12.0

[ TOP ]

Parcourir des éléments dans un tableau

      Vous aurez souvent à effectuer un certain traitement sur tous les éléments d'un tableau : afficher chaque valeur, la placer dans une base de données ou y ajouter une constante. C'est ce qu'ont appelle une itération. Pour exécuter cette tâche, PHP vous propose les deux moyens suivants :
  • Manuellement : Déplacer le pointeur d'un élément à l'autre
  • Avec la boucle foreach : Cette instruction est conçue pour faire automatiquement le travail, su début à la fin du tableau, valeur par valeur

Manuellement

      Représentez-vous votre tableau sous forme d'une liste et imaginez un pointeur désignant l'un des élément de cette liste. Il reste immobile tant que vous ne le déplacez pas. Pour le déplacer, vous disposez des fonctions suivantes, qui portent sur le tableau dont le nom est placé à l'intérieur des parenthèses :
  • current() : Désigne l'élément sur lequel est dirigé le pointeur. Celui-ci ne change pas de valeur
  • next() : Déplace le pointeur vers l'avant. Il désigne maintenant l'élément suivant l'élément actif avant l'utilisation de la fonction
  • previous() : Déplace le pointeur vers l'arrière.
  • end() : Déplace le pointeur vers le dernier élément du tableau
  • reset() : Déplace le pointeur sur le premier élément du tableau


[ TOP ]

ForEach()

      Cette instruction permet, à chaque exécution, d'accéder à l'élément suivant du tableau et de répéter, pour chacune de ces valeurs, le bloc d'instruction qui la suit. Sa forme générale : foreach ($NomTableau as $nomCle =>$nomValeur) { bloc d'instruction } avec :
  • $nomTableau : Nom du tableau à explorer.
  • $nomCle : Nom de la variable dans lequelle vous voulez placer la clé de l'élément. Cette valeur est facultative. Si vous l'omettez la valeur sera rangée dans la variable $nomValeur
  • $nomValeur : Nom de la variable dans lequelle sera placée la valeur


Exemple : ksort($chef); foreach($chef as $Dept =>$ville) { echo "$ville : dept<bR>"; } Initialement, foreach place le pointeur en tête de tableau. Il n'est donc pas nécessaire d'apeler la fonction reset().

[ TOP ]




Les constantes PHP

      Une constante n'a généralement pas de nom mais seulement une valeur, et cette valeur ne peut pas être modifiée. On utilise les constantes lorsque la valeur qu'elle représentent ne risque pas de changer. Exemple : Vous parlez de la date de la bataille de Marignan, vous pouvez coder directement 1515. On peut néanmoins donner un nom à une constante. De cette façon, on identifiera plus facilement ce qu'elle représente. La définition de cette constante sera généralement placée en tête du programme et on pourra s'y référer sous le nom symbolique dans tout le programme.

Pour définir une constante, on utilise l'instruction defin sous la forme suivante : define ("nom", "valeur"); define ("Marignan", "1515"); echo Marignan;

[ TOP ]





Copyright © 2003-2008 Dave J.