Exercices sur les variables en PHP5
Exercice 1 :
Parmi les variables suivantes, lesquelles ont un nom valide :
mavar, $mavar, $var5, $_mavar, $_5var, $__élément1, $hotel4* ?
Exercice 2
Donner les valeurs de $x, $y, $z à la fin du script suivant :
$x="PostgreSQL";
$y="MySQL";
$z=&$x;
$x="PHP 5";
$y=&$x;
Exercice 3
Lire les valeurs des variables du script de l’exercice 2 à l’aide du tableau $GLOBALS.Exercice 4
Déterminer le numéro de version de PHP, le nom du système d'exploitation de votre serveur ainsi que la langue du navigateur du poste client.Exercice 5
Donner la valeur de chacune des variables pendant et à la fin du script suivant et vérifier l’évolution du type de ces variables :$x="PHP5";
$a[]=&$x;
$y=" 5 eme version de PHP";
$z=$y*10;
$x.=$y;
$y*=$z;
$a[0]="MySQL";
Exercice 6
Donner la valeur des variables $x, $y, $z à la fin du script :
$x="7 personnes";
$y=(integer) $x;
$x="9E3";
$z=(double) $x;
Exercice 7
Donner la valeur booléenne des variables $a, $b, $c, $d, $e et $f :
$a="0";
$b="TRUE";
$c=FALSE;
$d=($a OR $b);
$e=($a AND $c);
$f=($a XOR $b);
------------------------------------------------------------------------------------------
Corrigés des exercices
------------------------------------------------------------------------------------------solution exercice 1 :
Les noms $mavar, $var5, $_mavar, $_5var, $__élément1 respectent les conventions. Les autres ne sont pas valides : mavar ne commence pas par le caractère $ et $hotel4* se termine par le caractère *
solution exercice 2 :
les variables $x, $y et $z valent toutes "PHP 5"solution exercice 3 :
<?php
$x="PostgreSQL";
$y="MySQL";
$z=&$x;
$x="PHP 5";
$y=&$x;
echo $GLOBALS['x'], "<br />";
echo $GLOBALS['y'], "<br />";
echo $GLOBALS['z'], "<br />";
?>
solution exercice 4 :
<?php
echo "Version de PHP : ",PHP_VERSION, "<br />";
echo "Système d'exploitation du serveur : ",PHP_OS, "<br />";
echo "Langue du navigateur client :
",$_SERVER["HTTP_ACCEPT_LANGUAGE"], "<br />";
?>
J’obtiens le résultat suivant (sur mon poste) :
Version de PHP : 5.0.2
Système d'exploitation du serveur : WINNT
Langue du navigateur client : fr
solution exercice 5 :
<?php
$x="PHP5";
echo "\$x vaut : $x et est de type ", gettype($x),"<br />";
$a[]=&$x;
echo "\$a[0] vaut : $a[0] et est de type ", gettype($a),"<br />";
$y=" 5 eme version de PHP";
echo "\$y vaut : $y et est de type ", gettype($y),"<br />";
$z=$y*10;
echo "\$z vaut : $z et est de type ", gettype($z),"<br />";
$x.=$y;
echo "\$x vaut : $x et est de type ", gettype($x),"<br />";
$y*=$z;
echo "\$y vaut : $y et est de type ", gettype($y),"<br />";
$a[0]="MySQL";
echo "\$a[0] vaut : {$a[0]} et est de type ", gettype($a),"<br />";
?>
Résultat affiché :
$x vaut : PHP5 et est de type string
$a[0] vaut : PHP5 et est de type array
$y vaut : 5 eme version de PHP et est de type string
$z vaut : 50 et est de type integer
$x vaut : PHP5 5 eme version de PHP et est de type string
$y vaut : 250 et est de type integer
$a[0] vaut : MySQL et est de type array
solution exercice 6 :
$x vaut : 9E3
$y vaut : 7
$z vaut : 9000
solution exercice 7 :
Solution : même dans sa dernière version, PHP continue à afficher 1 pour TRUE et rien (une chaîne vide !) pour FALSE. Pour réaliser l’évaluation booléenne des variables et afficher le résultat en clair (avec les mots TRUE ou FALSE) nous pouvons écrire le code suivant :
function bool($val)
{
if($val) echo "TRUE <br />";
else echo "FALSE <br />";
}
//********************
$a="0";
echo "\$a vaut : ",bool($a);
$b="TRUE";
echo "\$b vaut : ",bool($b);
$c=FALSE;
echo "\$c vaut : ",bool($c);
$d=($a OR $b);
echo "\$d vaut : ",bool($d);
$e=($a AND $c);
echo "\$e vaut : ",bool($e);
$f=($a XOR $b);
echo "\$f vaut : ",bool($f);
?>
Nous obtenons l’affichage ci-dessous :
$a vaut : FALSE
$b vaut : TRUE
$c vaut : FALSE
$d vaut : TRUE
$e vaut : FALSE
$f vaut : TRUE
Aucun commentaire:
Enregistrer un commentaire