Accueil   |   Forums   |  Offres d'emplois   |  Contact    |   Mon compte   
samedi 25 mai 2013 Rechercher :
Déposez votre CV gratuitement sur touslesemplois
 
comparer les prix
» Logiciels
» Jeux vidéos
» Matériel Informatique


» ASP.NET
» ASP
» SQL
» PHP
» JAVASCRIPT
» XML
 


» ACTUALITÉ / DIVERS
» DROIT DE L'INTERNET
» INFOS VIRUS
» PATCHS MICROSOFT
» SÉCURITÉ
» BASES DE DONNÉES
» DOWNLOAD .NET
» LOGITHÈQUE
» SERVICES WEB
» Y SONT FOUS !
» .NET
» ASP
» ASP.NET
» JAVA
» PHP
» XML
» LANGAGE C#
» LANGAGE VB.NET
» UNIX / LINUX
» WINDOWS
» EVÈNEMENTS
» GASP
» MICROSOFT
 



Vous êtes ici : Articles PHP > NOTES DE COURS

La portée des variables
Les variables sont des éléments de programmation représentées par des caractères (ou des suites de caractères). Elles sont utilisées en général pour faciliter la réutilisation d'une valeur fréquemment rencontrée dans une page web, mais également dans de nombreuses autres situations (les boucles, les tableaux, etc.) : l'utilisation des variables est incontournable en PHP, mais également dans tout autre langage.


ABONNEZ-VOUS GRATUITEMENT A LA REVUE DE PRESSE "LES Z'ACTUS" ET RECEVEZ CHAQUE JOUR DANS VOTRE BOITE AUX LETTRES LA MEILLEURE INFORMATION DEDIEE AUX WEBMASTERS / DEVELOPPEURS.

Indiquez votre adresse E-mail :

Technologie : PHP 
Date : 29/05/2006   
Auteur : ASP MAGAZINE

Syntaxe

Une variable peut être représentée par n'importe quel suite de caractères inclus dans les plages suivantes :

  • a-z : tous les caractères minuscules
  • A-Z : tous les caractères majuscules
  • 127-255 : tous les caractères dont le code ASCI est inclus dans cette plage

Chaque variable doit être précédée du signe dollars "$". Le caractère $ étant réservé, si vous souhaitez l'utiliser dans une chaîne de caractères, vous devrez le faire précéder du signe "\".

De façon générale voici la liste des caractères réservés devant être précédés du signe "\" dans une chaîne de caractères :

séquence valeur
\n Nouvelle ligne (linefeed, LF ou 0x0A en ASCII)
\r Retour à la ligne(carriage return, CR ou 0x0D en ASCII)
\t Tabulation horizontale (HT ou 0x09 en ASCII)
\\ Antislash
\$ Caractère $
\" Guillemet double
\[0-7]{1,3} Une séquence de caractère qui permet de rechercher un nombre en notation octale.
\x[0-9A-Fa-f]{1,2} Une séquence de caractère qui permet de rechercher un nombre en notation hexadécimale.

Important : Une variable doit obligatoirement commencer par un caractère alphabétique ou un caractère souligné "_".

<?
$1MaVariable =1 // est incorrect
?>

<?
$_MaVariable=1 // est correct
?>

Utilisation des variables dans une chaîne de caractères :

$var0="jean"
$var1="christophe
"

La concaténation :
La concaténation peut s'effectuer par l'intermédiaire du point ".".
$result=$var0."-".$var1 // retourne jean-christophe

Mais également au sein même de la chaîne

$result="$var0-$var1" // retourne jean-christophe

La portée des variables

La portée des variables est primordiale à comprendre en PHP. Car outre le fait que des variables portant le même nom au sein d'un même programme peuvent avoir des portées différentes et donc des valeurs différentes, la déclaration des variables est implicite dans le langage PHP. PHP détermine automatiquement le type d'une variable, en fonction de son utilisation.

Ce qu'il faut savoir :

  • Une variable $nombre peut représenter à la fois un cookie, une variable session, une variable postée d'un formulaire ou une variable définie par l'utilisateur. Il est important de bien comprendre ce point, afin d'éviter toute confusion éventuelle de nommage.
  • Chaque variable utilisée dans une fonction est une variable à portée locale.

Exemple :

Erreur fréquente :
<?
$a=1; // Variables à portée globale
$b=2;

function somme() {
// la fonction somme ne retourne pas le bon résultat
$result=$a+$b; // Variable à portée locale
return $result;
}
?>

1/ Correction de l'erreur : on passe les paramètres $a et $b à la fonction
<?
$a=1; // Variables à portée globale
$b=2;

function somme($a,$b) {
// la fonction somme retourne le bon résultat
$result=$a+$b;
return $result;
}
?>

2/ Correction de l'erreur  : On utilise le tableau GLOBALS
<?
$a=1; // Variables à portée globale
$b=2;

function somme() {
// la fonction somme retourne le bon résultat
$result = $GLOBALS["a"] + $GLOBALS["b"]; // Variables à portée globale
return $result;
}
?>

Récupérer les variables postées d'un formulaire

Afin d'éviter toute confusion, il sera en général judicieux dans le cadre d'un programme complexe de ne pas récupérer la variable associée à un champ de formulaire par $Nom_du_champ (ce qui pourrait porter à confusion avec d'autres variables du même nom pouvant être un cookie, une variable session, etc.).

On préferera donc utiliser les tableaux associatifs globals $HTTP_POST_VARS (pour une méthode POST) ou $HTTP_GET_VARS (pour une méthode GET).

Exemple :

Le formulaire
<form action="post.php" method="POST">
<input type=text name="valeur1" value="">
</form>

La récupération de la valeur valeur1 :

On pourrait récupérer la valeur postée par $valeur1, mais il sera préférable d'utiliser :

$HTTP_POST_VARS["valeur1"] // on récupère le contenu du champ valeur1



ASP Serveur - L'hébergement ASP.NET


A RETENIR CETTE SEMAINE
17/03/2011 - Plus que deux jours pour s'inscrire à la conférence Entity Framework
Venez découvrir comment utiliser l'Entity Framework de façon optimale lors de la prochaine conférenc ...
16/03/2011 - Test Internet Explorer 9 : un navigateur en net progrès
Internet Explorer 9 est une mise à jour radicale du navigateur de Microsoft. Réservé à Windows 7 et ...
16/03/2011 - SharePoint : Accéder à son Intranet SharePoint depuis un IPhone ou IPad via SSL VPN
Lisez ce post de Fabrice Romelard dans lequel il explique comment accéder à SharePoint depuis les ma ...
15/03/2011 - Internet Explorer 9 à télécharger
Après des mois de bêta publique, et une récente version RC (Release candidate), Microsoft a enfin ac ...
15/03/2011 - MSDN Magazine : Sélection des articles Azure en français
Retrouvez notre sélection des meilleurs articles en français concernant la plateforme Windows Azure ...
15/03/2011 - Webcasts Azure des Microsoft TechDays 2011 - La sélection de ZeCloud
Comme les webcasts des sessions des TechDays 2011 commencent à être disponibles, ZeCloud nous propos ...
14/03/2011 - SharePoint 2010 : Résolution d’un problème javascript avec ISA Server 2004 SP2
Découvrez comment Julien Chable solutionne un bug Javascript rendant inutilisables la plupart des co ...
(c) 1999-2006 ASP MAGAZINE SARL
Partenaires : Codes sources c2i ASP-PHP
Hébergement serveurs dédiés Windows


Hit-Parade