Bonjour,
Je comprends pas 2 choses concernant "switch et case"; je crois comprendre que 'switch' n'exécute l'instruction que si la valeur correspond (est égal ); or, le code suivant fonctionne bien alors que la valeur est comprise entre deux "cases".
D'autre part, je lis sur le site http://www.php.net/manual/fr/control...res.switch.php "Une autre chose à mentionner est que la valeur du case peut être toute expression de type scalaire, c'est-à-dire nombre entier, nombre à virgule flottante et chaîne de caractères. Les tableaux sont sans intérêt dans ce contexte-là." J'ai donc créé le code suivant en espérant qu'il fonctionne ; où est l'erreur?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head><title>14_switch_2</title></head> <body> <h2>14_switch_2</h2><br/> <h2>Entrez les données suivantes </h2> <form name="formulaire" method="post" action="14_switch_2.php"> Entrez x : <input type="text" name="x"/> <br/> Entrez y : <input type="text" name="y"/> <br/> Entrez z : <input type="text" name="z"/> <br/><br/> <input type="submit" name="valider" value="OK"/> </form> <?php if(isset($_POST['valider'])){ $x=$_POST['x']; $y=$_POST['y']; $z=$_POST['z']; echo 'x = '.$x.'<br/>'; echo 'y = '.$y.'<br/>'; echo 'z = '.$z.'<br/>'; } switch ($x) { case 0: echo "0 < ou = x < 1"; break; case 1: echo "1 < ou = x < 2"; break; case 2: echo "2 < ou = x < 3"; break; case 3: echo "3 < ou = x"; } ?> </body> </html>
Merci et à bientôt.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head><title>14_switch_3</title></head> <body> <h2>14_switch_3</h2><br/> <h2>Entrez les données suivantes </h2> <form name="formulaire" method="post" action="14_switch_3.php"> Entrez x : <input type="text" name="x"/> <br/> Entrez y : <input type="text" name="y"/> <br/> Entrez z : <input type="text" name="z"/> <br/><br/> <input type="submit" name="valider" value="OK"/> </form> <?php if(isset($_POST['valider'])){ $x=$_POST['x']; $y=$_POST['y']; $z=$_POST['z']; echo 'x = '.$x.'<br/>'; echo 'y = '.$y.'<br/>'; echo 'z = '.$z.'<br/>'; } switch ($x) { case 0: echo "0 < ou = x < 1.5"; break; case 1.5: echo "1.5 < ou = x < 2.5"; break; case 2.5: echo "2.5 < ou = x < 3.5"; break; case 3.5: echo "3.5 < ou = x"; } ?> </body> </html>
Partager