Vous êtes ici Tutoriel > Les tests conditionnels - If

 
 

PHP - Les tests conditionnels - If

Tutoriel écrit par R@f
Écrit le 19 Jan 2007 - Modifié le 17 Fev 2007

Le test conditionnel IF en PHP est très similaire aux autres langages courant que nous connaissons

Pour comprendre les conditionnels, pensez à la chance si vous gagniez demain 100000 euros au jeu ?!
Si vous gagnez, alors vous serez riche sinon la vie va continuer sans que vous ayez gagné au jeu. C'est le celèbre si/sinon qui nous sert tous les jours dans la vie que nous allons programmer. Raisonnez de la même manière pendant la programmation de vos tests conditionnels.

Le IF est très important en programmation. Mettre en place des conditions ouvre un horizon plus large et indispensable à la programmation. Les tests conditionnels augmentent le nombre de choix possible pour exécuter une portion de code.

Vous pourrez ensuite proposer un agenda sur votre site web !? Un agenda est peut-etre un peu compliqué à programmer pour commencer, soyons simple et commençons justement par les tests simples.


Sommaire :

PHP - Les tests conditionnels - If

 
PHP - If (le test simple)

Le premier test dont nous allons parler est donc le test simple: if ; qui se traduit par "si".

La structure est la suivante:

if( condition )
action


Si la condition est vérifiée (si condition vaut true, ou vrai), alors l'action est exécutée. Dans le cas contraire, l'action n'est pas exécutée.

Voyons avec un premier exemple, il s'agit d'un test d'égalité:

l'action n'est effectuée que si l'égalité a lieu.

.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
  <?php
$age
= 18;

if(
$age == 18 ) // vous remarquerez qu'il n'y a pas de ; à la fin de cette ligne
 
echo 'Vous avez 18 ans!';
?>

Affiche:
Vous avez 18 ans


Le point important ici est l'operateur == , à ne pas confondre avec le = . Un simple = permet de donner une valeur à une variable, et l'operateur == permet de tester l'égalité entre les deux opérandes. Ainsi, le code suivant n'affichera rien:
.01
.02
.03
.04
.05
.06
.07
  <?php
$age
= 18;

if(
$age = 18 )
  echo
'Vous avez 18 ans!';
?>

PHP - Les accolades.

Dans les deux morceaux de code ci-dessus, si le test est validé, une seule action est effectuée. Mais vous pourriez vouloir en effectuer plusieurs; dans ce cas, il faut utiliser des accolades:
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
  <?php
$age
= 18;

if(
$age == 18 ) //
{
  echo
'Vous avez 18 ans.<br />';
  echo
'Vous pouvez passer votre permis de conduire!';
}
?>

Affiche:
Vous avez 18 ans.
Vous pouvez passer votre permis de conduire!


Si vous aviez mis le code suivant, cela n'aurait pas marché:
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
  <?php
$age
= 17;

if(
$age == 18 )
  {
  echo
'Vous avez 18 ans.<br />';
  }
  echo
'Vous pouvez passer votre permis de conduire.';
 
?>

Affiche:
Vous pouvez passer votre permis de conduire.

La variable $age est égal à 17, donc la phrase "Vous avez 18 ans" ne rentre pas dans la condition du test et ne s'affiche pas. Par contre la phrase "Vous pouvez passer votre permis de conduire" s'affiche puisqu'elle n'appartient pas au test if.

Vous pouvez mettre des accolades pour une seule action:
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
  <?php
$age
= 18;

if(
$age == 18 )
{
  echo
'Vous avez 18 ans';
}
?>

Affiche:
Vous avez 18 ans

Le code ci-dessus est parfaitement correct, mais il est plus lourd que sa version sans accolades (la lisibilité du programme peut s'en trouver réduite), privilégier la version sans accolades!


© Copyright: Les tutoriels sont exclusifs et sont la propriétés des auteurs.
    Reproduction interdite.