Comment Ca Marche l'informatique ?
Accueil
Forum
Aide
bordure
Page d'accueil
Ajouter aux favoris
Signalez une erreur
Ecrire à Jean-Francois Pillou
Introduction
Implantation du code
Caractéristiques
Installation
Sous Linux
Sous Windows
Guide utilisateur
Variables
Opérateurs
Structures conditionnelles
Fonctions
Classes
Affichage de texte
Var. d'environnement
Les fichiers
Récupérer des données
Bases de données
Expressions régulières
Génération d'images
Cookies/En-têtes HTTP
Mail et réseau
Annuaires LDAP
XML
Mise en pratique
Moteur de recherche
Administration LDAP
Version 2.0.3
Variables en Php Page précédente Page suivante Retour à la page d'accueil

Concept de variable avec PHP

Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois types:

  • scalaires
  • tableaux
  • tableaux associatifs
Quelque soit le type de variable, son nom doit obligatoirement être précédé du caractère dollar ($). Contrairement à de nombreux langages de programmation, comme le langage C, les variables en PHP n'ont pas besoin d'être déclarées, c'est-à-dire que l'on peut commencer à les utiliser sans en avoir averti l'interpréteur précédemment, ainsi si la variable existait précédemment, son contenu est utilisé, sinon l'interpréteur lui affectera la valeur en lui assignant 0 par défaut. De cette façon si vous ajoutez 3 à une nouvelle variable (non définie plus haut dans le code), sa valeur sera 3...

Nommage des variables

Avec PHP, les noms de variables doivent répondre à certains critères:

  • un nom de variable doit commencer par une lettre (majuscule ou minuscule) ou un "_" (pas par un chiffre)
  • un nom de variable peut comporter des lettres, des chiffres et le caractère _ (les espaces ne sont pas autorisés!)

Nom de variable correct Nom de variable incorrect Raison
$Variable$Nom de Variable comporte des espaces
$Nom_De_Variable$123Nom_De_Variable commence par un chiffre
$nom_de_variable$toto@mailcity.com caractère spécial @
$nom_de_variable_123$Nom-de-variable signe - interdit
$nom_de_variablenom_de_variable ne commence pas par $

Les noms de variables sont sensibles à la casse (le langage PHP fait la différence entre un nom en majuscule et un nom en minuscules), il faut donc veiller à utiliser des noms comportant la même casse! Toutefois, les noms de fonctions font exception à cette règle...

Variables scalaires

Le langage PHP propose trois types de variables scalaires:

  • entiers: nombres naturels sans décimale (sans virgule)
  • réels: nombres décimaux (on parle généralement de type double, car il s'agit de nombre décimaux à double précision)
  • chaines de caractères: ensembles de caractères
Il n'est pas nécessaire en PHP de typer les variables, c'est-à-dire de définir leur type, il suffit de leur assigner une valeur pour en définir le type:
  • entiers: nombre sans virgule
  • réels: nombres avec une virgule (en réalité un point)
  • chaines de caractères: ensembles de caractères entre guillemets simples ou doubles

Instruction Type de la variable
$Variable = 0; type entier
$Variable = 12; type entier
$Variable = 0.0; type réel
$Variable = 12.0; type réel
$Variable = "0.0"; type chaîne
$Variable = "Bonjour tout le monde"; type chaîne

Il existe des caractères repérés par un code ASCII spécial permettant d'effectuer des opérations particulières. Ces caractères peuvent être représentés plus simplement en langage PHP grâce au caractère '\' suivi d'une lettre, qui précise qu'il s'agit d'un caractère de contrôle:

Caractère Description
\" guillemet
\\ barre oblique inverse (antislash)
\r retour chariot
\n retour à la ligne
\t tabulation

En effet, certains de ces caractères ne pourraient pas être représentés autrement (un retour à la ligne ne peut pas être représenté à l'écran). D'autre part, les caractères \ et " ne peuvent pas faire partie en tant que tel d'une chaîne de caractère, pour des raisons évidente d'ambiguité...

Variables tableaux

Les variables, telles que nous les avons vues, ne permettent de stocker qu'une seule donnée à la fois. Or, pour de nombreuses données, comme cela est souvent le cas, des variables distinctes seraient beaucoup trop lourdes à gérer. Heureusement, PHP propose des structures de données permettant de stocker l'ensemble de ces données dans une "variable commune". Ainsi, pour accéder à ces valeurs il suffit de parcourir la variable de type complexe composée de "variables" de type simple.

Les tableaux stockent des données sous forme de liste. Les données contenues dans la liste sont accessibles grâce à un index (un numéro représentant l'élément de la liste). Contrairement à des langages tels que le langage C, il est possible de stocker des éléments de types différents dans un même tableau.

Ainsi, pour désigner un élément de tableau, il suffit de faire suivre au nom du tableau l'indice de l'élément entre crochets:

$Tableau[0] = 12;

$Tableau[1] = "CCM";

Avec PHP, il n'est pas nécessaire de préciser la valeur de l'index lorsque l'on veut remplir un tableau, car il assigne la valeur 0 au premier élément (si le tableau est vide) et incrémente les indices suivants. De cette façon, il est facile de remplir un tableau avec des valeurs. Le code précédent est équivalent à:

$Tableau[] = 12;

$Tableau[] = "CCM";

  • Les indices de tableau commencent à zéro
  • tous les types de variables peuvent être contenus dans un tableau
Lorsqu'un tableau contient d'autres tableaux, on parle de tableaux multidimensionnels. Il est possible de créer directement des tableaux multidimensionnels en utilisant plusieurs paires de crochets pour les index (autant de paires de crochets que la dimension voulue). Par exemple, un tableau à deux dimensions pourra être déclaré comme suit:

$Tableau[0][0] = 12;

$Tableau[0][1] = "CCM";

$Tableau[1][0] = 1245.652;

$Tableau[1][1] = "Au revoir";

Variables tableaux associatifs

PHP permet l'utilisation de chaînes de caractères au lieu de simples entiers pour définir les indices d'un tableau, on parle alors de tableaux associatifs. Cette façon de nommer les indices peut parfois être plus agréable à utiliser:

$Toto["Age"] = 12;

$Toto["Adresse"] = "22 rue des bois fleuris";

$Toto["Nom"] = "Ah, vous auriez bien aimé 

connaître le nom de famille de Toto...";

Portée (visibilité) des variables

Selon l'endroit où on déclare une variable, celle-ci pourra être accessible (visible) de partout dans le code ou bien que dans une portion confinée de celui-ci (à l'intérieur d'une fonction par exemple), on parle de portée (ou visibilité) d'une variable.

Lorsqu'une variable est déclarée dans le code même, c'est-à-dire à l'extérieur de toute fonction ou de tout bloc d'instructions, elle est accessible de partout dans le code (n'importe quelle fonction du programme peut faire appel à cette variable). On parle alors de variable globale

Lorsque l'on déclare une variable à l'intérieur d'un bloc d'instructions (entre des accolades), sa portée se confine à l'intérieur du bloc dans lequel elle est déclarée.

  • Une variable déclarée au début du code, c'est-à-dire avant tout bloc de donnée, sera globale, on pourra alors les utiliser à partir de n'importe quel bloc d'instructions
  • Une variable déclarée à l'intérieur d'un bloc d'instructions (dans une fonction ou une boucle par exemple) aura une portée limitée à ce seul bloc d'instructions, c'est-à-dire qu'elle est inutilisable ailleurs, on parle alors de variable locale

D'une manière générale il est préférable de donner des noms différents aux variables locales et globales pour des raisons de lisibilité et de compréhension du code...

Définition de constantes

Une constante est une variable dont la valeur est inchangeable lors de l'exécution d'un programme. Avec PHP, les constantes sont définies grâce à la fonction define(). la syntaxe de la fonction define() est la suivante:


define("Nom_de_la_variable", Valeur);

Le nom d'une constante définie à l'aide de la fonction define() ne doit pas commencer par le caractère $ (de cette façon aucune affectation n'est possible).


Page précédente Page suivante site de reference

Ce document issu de CommentCaMarche.net est soumis à la licence GNU FDL. Vous pouvez copier, modifier des copies de cette page tant que cette note apparaît clairement.