Informatique


Les variables

Noms des variables

Le nom d'une variable:

  • est précédé du signe $
  • commence toujours par une lettre ou par l'underscore (_)
  • peut contenir des lettres et des chiffres pour les caractères suivants
  • est sensible à la casse
  • est de longueur non limitée
  • ne contient jamais de caractères accentués


Affecter une variable

Par valeur
Démo
<?php
	$var1 = 42;
	$var2 = $var1;    // une copie du contenu de $var1 est chargée dans $var2
	echo( "<br>\$var1 contient: $var1 et \$var2 contient: $var2 ");    
?>
Par adresse
Démo
<?php
	$var1 = 42;
	$var2 = &$var1;    //l'adresse de la variable $var1 est placée dans $var2 (pointeur)
	echo( "<br>\$var1 contient: $var1 et \$var2 contient: $var2 ");    
	$var1=56;
	echo( "<br>\$var1 contient: $var1 et \$var2 contient: $var2 ");    
	$var1="bonjour";
	echo( "<br>\$var1 contient: $var1 et \$var2 contient: $var2 ");
?>

Les types de variables

Types Exemples Description
integer 5 (base 10)
0xf0b (base 16)
0752 (base 8)
entiers en base 10, 8 ou 16
double 336.25 nombres réels (virgule flottante)
string "bonjour" chaîne de caractères
Une chaîne de caractères est aussi un tableau en php
boolean true et false les valeurs logiques vrai et faux
NULL NULL Il s'agit des variables non affectées ou affectées avec la valeur NULL
array Les variables indicées
object les variables pouvant intégrer des propriétés et des méthodes

Démo
<?php
	$var0 = 42;
	$var1 = 42.143;
	$var2 = "Pierrot le fou";
	$var3 = true;
	$var4 = Null;
	$var5 = array("Pol","Adolf","Joseph","Bernard");
	var_dump($var0,$var1,$var2,$var3,$var4,$var5);
?>

Règles d'évaluation booléenne des expressions

Expressions évaluées à FALSE concernent les variables:
  • affectées avec le mot clé false
  • affectées avec la valeur 0 de type integer
  • affectées avec la valeur décimale 0.0 de type double
  • affectées avec la valeur "0" de type string
  • affectées avec NULL
  • non initialisées
  • ou à des objets sans propriété ni méthode

Les expressions évaluées à TRUE concernent les variables affectées avec n'importe quelles autres valeurs.

Démo
<?php
	$var0 = false;
	$var1 = 0;
	$var2 = 0.0;
	$var3 = "0";
	$var4 = Null;
	$var5;
	$var6 = 42;
	var_dump((bool)$var0);
	var_dump((bool)$var1);
	var_dump((bool)$var2);
	var_dump((bool)$var3);
	var_dump((bool)$var4);
	var_dump((bool)$var5);
	var_dump((bool)$var6);
?>

Passer des variables

Toutes les variables passées par formulaire, url, session et cookies sont stockées dans des tableaux associatifs prédéfinis, le tableau suivant en dresse la liste:

Tableaux associatifs Description
$_GLOBALS Il contient le nom et la valeur de toutes les variables globales d'un script.
Les noms des variables sont les clés de ce tableau.
$GLOBALS["mavar"] récupère la valeur de la variable $mavar en dehors de la zone de visibilité (dans les fonctions par exemple).
$_GET Il contient les valeurs passées par url ou par la méthode GET d'un formulaire.
Les noms des champs de formulaire sont les clés de ce tableau.
$_POST Il contient les valeurs passées par la méthode POST d'un formulaire.
Les noms des champs de formulaire sont les clés de ce tableau.
$_FILES Il contient les noms et propriétés des fichiers téléchargés par le poste client.
$_COOKIE Pour récupérer les cookies.
Les noms des cookies sont les clés de ce tableau.
$_SESSION Il contient l'ensemble des variables de session et leurs valeurs.
$_REQUEST Il contient l'ensemble des variables globales $_GET, $_POST, $_COOKIE, et $_FILES.
$_ENV Il contient les variables d'environnement, celles-ci varient avec le serveur.
$_SERVER Il contient les informations liées au serveur web.
$_SERVER['HTTP_ACCEPT_LANGUAGE'], contient le code la langue du navigateur client
$_SERVER['HTTP_COOKIE'], contient les nom et valeur des cookies déposés chez le client
$_SERVER['HTTP_HOST'], qui donne le nom de domaine
$_SERVER['SERVER_ADDR'], qui indique l'IP du serveur
$_SERVER['PHP_SELF'], qui contient le nom du script en cours
$_SERVER['QUERY_STRING'], qui contient la requête utilisée pour accéder au script