Vous êtes ici : Accueil > Archives > Tutoriels > PHP > Structures de contrôle, suite

< Retour

Structures de contrôle, suite


les Stuctures de Contrôle, suite

Variante : SI ... ALORS ... SINON_SI ...


SI($variable 'opérateur de comparaison' 'valeur de la condition')
ALORS
{
Action_alors;
Action_alors;
Action_alors;
}
SINON_SI ($variable 'opérateur de comparaison' 'valeur de la condition')
ALORS
{
Action_alors;
Action_alors;
Action_alors;
}

Aussi appellée "Structure en peigne", cette syntaxe permet d'imbriquer à l'infini des SI dans les SINON. Moins pratique que l'opérateur 'SWITCH ... CASE ...', sauf s'il n'y a que deux ou trois tests imbriqués...

<?php
IF($variable == "valeur1")
{
echo "la variable réponds au critère 1";
}
elseif($variable == "valeur2")
{
echo "la variable réponds au critère 2";
}
elseif($variable == "valeur3")
{
echo "la variable réponds au critère 3";
}
?>


SWITCH ... CASE ...


Là, je ne connait pas le nom français de cette structure de contrôle, du moins je l'ai oublié :-) mais c'est très pratique. C'est à utiliser dès lors que l'on fait beaucoup de tests avec des égalités sur une même variable.

Exemple :

<?php
switch($variable)
{
case "":
case "0":
action;
break;
case "1":
action;
action;
break;
case "2":
action;
break;
}
?>

Si plusieurs valeurs aboutissent à une même action, il est possible d'ouvrir plusieurs CASE successifs, mais dans tout les cas, il faut le(s) refermer avec un BREAK, qui arrête le processus dès lors que l'un des CASE est rempli ! Il est en effet inutile de passer partout dès lors que l'un des tests à réussi.

<?php
switch($type_fichier)
{
case "txt":
case "rtf":
case "doc":
echo "le Fichier est un document Texte.<br>\n";
break;
case "jpg":
case "jpeg":
case "gif":
case "png":
echo "le Fichier est un document Graphique.<br>\n";
break;
default:
echo "le Fichier est un document quelconque...<br>\n";
break;
}
?>

Dernier point, la ligne default permet l'exécution de lignes de script au cas où aucun des critères des 'case' n'est rempli. Attention, ce n'est pas la même chose que le case "": qui gère le cas des valeurs vides, mais qui n'est pas une action par défaut.