Home
Accueil
Downloads
Téléchargements
Forums
Forums
Your Account
Votre compte
Menu
· Accueil ·

· Communication ·
  · Forums
  · Messages privés
  · Contactez nous
  · Recommendez nous
  · Sondages
  · Les projets

· Nouvelles ·Stats
  · Sujets
  · Ecrire un article
  · Articles archivés
  · Articles RSS
  · Lettre de sécurité
  · Archive de lettres

· Téléchargements ·
  · Accueil
  · Nouveautés
  · Mises à jour
  · Thêmes

· Outils ·
  · Outils divers
  · Convertisseur de temps
  · Table de caractères
  · Générateur de boutons
  · Compresseur Javascript

· Documentation ·
  · Wiki
  · Questions/Réponses
  · Documents
  · Manuel PHP-Nuke
  · Manuel PHP
  · Manuel PEAR
  · Encyclopédies

· Liens ·
  · Nos liens
  · Nos fluxs RSS
  · Partenaires
  · Votre publicité
  · Sitemap
  · Mes bannières

· Infos ·
  · Rechercher
  · Votre compte
  · Liste des membres
  · Carte des membres
  · Top

· Divers ·
  · Météo
  · Galeries
  · Statistiques Phpnuke
  · MS Analysis


Les variables

Chapitre 12. Les variables

Essentiel

En PHP, les variables sont représentées par un signe dollar "$" suivi du nom de la variable. Le nom est sensible à la casse (i.e. $x != $X).

Les noms de variables suivent les mêmes règles de nommage que les autres entités PHP. Un nom de variable valide doit commencer par une lettre ou un souligné (_), suivi de lettres, chiffres ou soulignés. Exprimé sous la forme d'une expression régulière, cela donne : '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'

Note : Dans nos propos, une lettre peut être une des lettres minuscules (a à z) ou majuscules (A à Z) et les caractères ASCII de 127 à 255 (0x7f-0xff).

Astuce : Vous pourriez également avoir besoin de jeter un oeil sur Annexe R.

Pour obtenir des informations sur une variable, voyez les fonctions dédiées aux variables.

Exemple 12-1. Validité des noms de variables

<?php
$var
= 'Jean';
$Var = 'Paul';
echo
"$var, $Var";         // affiche "Jean, Paul"

$4site = 'pas encore';     // invalide : commence par un nombre
$_4site = 'pas encore';    // valide : commence par un souligné
$täyte = 'mansikka';    // valide : 'ä' est ASCII (étendu) 228.
?>

En PHP 3, les variables sont toujours assignées par valeur. C'est-à-dire, lorsque vous assignez une expression à une variable, la valeur de l'expression est recopiée dans la variable. Cela signifie, par exemple, qu'après avoir assigné la valeur d'une variable à une autre, modifier l'une des variables n'aura pas d'effet sur l'autre. Pour plus de détails sur ce genre d'assignation, reportez-vous aux expressions.

Depuis PHP 4, PHP permet aussi d'assigner les valeurs aux variables par référence. Cela signifie que la nouvelle variable ne fait que référencer (en d'autres terme, "devient un alias de", ou encore "pointe sur") la variable originale. Les modifications de la nouvelle variable affecteront l'ancienne et vice versa.

Pour assigner par référence, ajoutez simplement un & (ET commercial) au début de la variable qui est assignée (la variable source). Dans l'exemple suivant, Mon nom est Pierre s'affichera deux fois :

Exemple 12-2. Assignation de référence

<?php
$foo
= 'Pierre';              // Assigne la valeur 'Pierre' à $foo
$bar = &$foo;                 // Référence $foo avec $bar.
$bar = "Mon nom est $bar";  // Modifie $bar...
echo $foo;                    // $foo est aussi modifiée
echo $bar;
?>

Une chose importante à noter est que seules les variables nommées peuvent être assignées par référence.

Exemple 12-3. Assignation de référence et variables anonymes

<?php
$foo
= 25;
$bar = &$foo;      // assignation valide
$bar = &(24 * 7);  // assignation invalide : référence une expression sans nom
function test() {
   return
25;
}
$bar = &test();    // assignation invalide.
?>

Il n'est pas nécessaire d'initialiser les variables en PHP, cepedant, cela reste une excellente pratique. Les variables non initialisées ont une valeur par défaut selon leurs types - FALSE, zéro, chaîne vide ou un tableau vide.

Exemple 12-4. Valeurs par défaut des variables non initialisées

<?php
echo ($unset_bool ? "true" : "false"); // false
$unset_int += 25; // 0 + 25 => 25
echo $unset_string . "abc"; // "" . "abc" => "abc"
$unset_array[3] = "def"; // array() + array(3 => "def") => array(3 => "def")
?>

Utiliser la valeur par défaut d'une variable non initialisée est problèmatique lorsque vous incluez un fichier dans un autre qui utilise le même nom de variable. C'est également un risque niveau sécurité lorsque register_globals est activé. Une erreur de niveau E_NOTICE sera émise lorsque vous travaillerez avec des variables non initialisées, cependant, aucune erreur ne sera lancée lorsque vous tenterez d'insérer un élément dans un tableau non initialisé. La structure de langage isset() peut être utilisée pour détecter si une variable a déjà été initialisée.


Manuel PHP pour PHP-Nuke © www.stefvar.com
Syndiquez notre contenu RSS, Atom, etc..
PHP-Nuke © 2007Reproduction interdite sans autorisation de ma part www.stefvar.com Copyright © 2008Thème iCGstation
Site français de la communauté PragmaMx