Page 1 sur 1

Question sur les conditions ?

Posté : 13 sept. 2007, 14:20
par kweb
Bonjour,

Par defaut php vas lire de haut en bas le code.
j'ai un doute sur le sens de lecture des conditions suivante.
//1er condition
if (....)

//2ème conditions
if (....)

//associé au 1er if
else{....}

//associé au 2ème if
else{....}
cela peut il se lire comme sa ?

ps: j'ai vraiment du mal a expliqué ! désolé

Posté : 13 sept. 2007, 14:25
par Zurg
non,

c'est plutôt comme ça :
if
{
// 1er if
}
else
{

// else du 1er if
if 
{
//ton 2e if
}
else
{
// else du 2e if
}
}


voili ;)

Posté : 13 sept. 2007, 14:25
par Ryle
A priori je dirais non. Un else correspond au if qui le précède immédiatement. Cela sera plus flagrant si tu délimite bien le contenu de ton if avec des accolades et que tu indentes convenablement ton code :
if (....) { //1er condition 

   if (....) {  //2ème conditions 
      ....
   }
   else { //associé au 2ème if
      ....
   } 

} 
else { //associé au 1er if
  ....
}

Posté : 13 sept. 2007, 14:50
par fab
Pour le fun sinon avec une synthaxe courte :)
<?php
echo ($a == $b) ? (($b == $c) ? 'echo deuxieme if' : 'echo else deuxieme if') : 'echo else premier if';
?>
Ainsi pour :
- $a = $b =$c on aura "echo deuxieme if" d'affiché
- $a = $b != $c on aura "echo else deuxieme if" d'affiché
- $a != $b on aura echo else premier if d'affiché

et on peut en rajouter et en rajouter :)

yahouuu :
echo ($a == $b) ? (($b == $c) ? (($c == $d) ? (($d == $e) ? (($e == $f) ? (($f == $g) ? 
'if 6' : (($a == $g) ? 'if else 6' : 'else else 6') : (($a == $f) ? 'if else 5' : 'else else 5') : 
(($a == $e) ? 'if else 4' : 'else else 4') : 'else 3') : 'echo else deuxieme if') : (($a == $c) ? 'if else 1' : 'else else 1';

Posté : 13 sept. 2007, 14:52
par kweb
Ok, merci pour ses explication.

Posté : 19 sept. 2007, 00:56
par didoulive
Il y a aussi :

if
elseif
else

Faut pas oublier le elseif