| Accueil | table PHP | index PHP | précédent | suivant |

L'instruction "switch"

L'instruction switch est un if à choix multiples permettant de comparer une expression à plusieurs valeurs. Sa syntaxe est la suivante :

switch(expression_switch)
{
case expression_choix1 :
// instructions PHP
break;

case expression_choix2 :
// instructions PHP
break;

// autres case

default :
// instructions PHP
}


Les clauses case sont analysées successivement et leurs instructions sont exécutées lorsque expression_switch et expression_choix sont égales. La présence facultative d'une instruction break interrompt l'analyse et provoque la fin du switch. Les instructions de la clause facultative default s'exécutent si un break n'a pas provoqué une sortie préalable.

L'utilisation la plus courante de l'instruction switch est de faire un choix entre plusieurs options. Les choix sont alors des constantes et l'instruction break est toujours présente dans les clauses case :


<!--script014 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Titre de cette page : script014</title>
<meta name="description" content="Phrase décrivant clairement cette page" />
<meta name="keywords" content="mot1 mot2, mot3 mot4 mot5, mot6" />
<link rel="stylesheet" type="text/css" href="PHPStyle009.css" />
</head>
<body>

<div id="conteneur">

<h2>"Plats du jour"<br/>
pour la semaine</h2>
<?php
function nom_jour($No_jour)
{
$noms=array("dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi");
return $noms[$No_jour];
}

function nom_mois($No_mois)
{
$noms=array("janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre");
return $noms[$No_mois-1];
}

$jour_sem=date("w");
$jour=date("j");
$mois=date("m");
$an=date("Y");
if($jour == 1) {$jour="1er";}
$jourF=nom_jour($jour_sem);
$moisF=nom_mois($mois);

echo "Aujourd'hui nous sommes le :<br/> $jourF $jour $moisF $an <br/><br/>" ;
switch($jour_sem)
{
case 0 : // dimanche


$plat="poule au pot";
break;


case 1 : // lundi


$plat="omelette aux cèpes";
break;


case 2 : // mardi


$plat="steak frites";
break;


case 3 : // mercredi


$plat="tomates farcies";
break;


case 4 : // jeudi


$plat="saucisse purée";
break;


case 5 : // vendredi


$plat="carpe de l'étang";
break;


case 6 : // samedi


$plat="b&#156;uf bourguignon";
break;


}
echo "Plat du jour : <span class=\"Tspan\"> $plat </span>";
?>

</div>

</body
</html>


Exécuter ce script




suivant