• Aucun résultat trouvé

Voici ce qu'on doit mettre dans l'ordre pour utiliser une condition :

1. Pour introduire une condition, on utilise le mot "If", qui en anglais signifie "Si".

2. On ajoute à la suite entre parenthèses la condition en elle-même (vous allez voir que vous pouvez inventer une infinité de conditions).

3. Enfin, comme pour les fonctions, on ouvre des accolades à l'intérieur desquelles on mettra les instructions à exécuter si la condition est remplie.

Puisqu'un exemple vaut toujours mieux qu'un long discours :

Source 1.6.1 : un exemple de condition <?

if ($age <= 12) {

echo "Salut gamin !"; }

?>

Ici, on demande à PHP : Si la variable $age est inférieure ou égale à 12, affiche "Salut gamin !" Vous remarquerez que dans la quasi-totalité des cas, c'est sur une variable qu'on fait la condition. Dans notre exemple, on travaille sur la variable $age. Ce qui compte ici, c'est qu'il y a deux possibilités : soit la condition est remplie (l'âge est inférieur ou égal à 12 ans) et alors on affiche quelque chose ; sinon, eh bien on saute les instructions entre accolades, on ne fait rien.

Bon on peut quand même améliorer notre exemple. On va afficher un autre message si l'âge est supérieur à 12 ans :

Source 1.6.2 : une condition avec else <?

$age = 8;

if ($age <= 12) // SI l'âge est inférieur ou égal à 12

{

echo "Salut gamin ! Bienvenue sur mon site !<br>";

$autorisation_entrer = "Oui"; }

else // SINON

{

echo "Ceci est un site pour enfants, vous êtes trop vieux pour pouvoir entrer. Au revoir !<br>";

$autorisation_entrer = "Non"; }

echo "Avez-vous l'autorisation d'entrer ? La réponse est : $autorisation_entrer";

?>

Bon comment marche ce code ? Tout d'abord, j'ai mis plusieurs instructions entre accolades (il ne faut pas oublier que vous pouvez mettre plusieurs instructions).

Ensuite, vous avez remarqué que j'ai ajouté le mot "else", qui signifie en anglais "sinon". En clair, on demande : Si l'âge est inférieur ou égal à 12 ans, fais ceci, sinon fais cela.

Essayez ce bout de code chez vous, en vous amusant à modifier la valeur de $age (sur la première ligne). Vous allez voir que le message qui s'affiche change en fonction de l'âge que vous indiquez ! Bien entendu, vous mettez les instructions que vous voulez entre accolades. Ici par exemple j'ai affiché un message, et j'ai donné une valeur différente à la variable $autorisation_entrer, ce qui pourrait nous servir par la suite. Par exemple :

Source 1.6.3 : une autre condition avec elseif <?

if ($autorisation_entrer == "Oui") // SI on a l'autorisation d'entrer

{

// instructions à exécuter quand on est autorisé à entrer

}

elseif ($autorisation_entrer == "Non") // SINON SI on n'a pas l'autorisation d'entrer

{

// instructions à exécuter quand on n'est pas autorisé entrer

}

else // SINON (la variable ne contient ni Oui ni Non, on ne peut pas agir)

{

echo "Euh, je ne connais pas ton âge, tu peux me le rappeler s'il te plaît ?"; }

?>

Oulah, ça commence à se compliquer un tantinet n'est-ce pas ?

Bon la principale nouveautée ici, c'est le mot-clé "elseif" qui signifie "Sinon si". Dans l'ordre, PHP rencontre les conditions suivantes :

1. Si $autorisation_entrer est égal à "Oui", tu exécutes ces instructions...

2. Sinon si $autorisation_entrer est égal à "Non", tu exécutes ces autres instructions... 3. Sinon, tu redemandes l'âge pour savoir si on a ou non l'autorisation d'entrer.

Au fait, au départ, une variable ne contient rien. Sa valeur est vide, on dit qu'elle vaut NULL, c'est-à-dire rien du tout.

Pour vérifier si la variable est vide, vous pouvez taper : if ($variable == NULL)...

Des Conditions Multiples

Vous devez vous dire : "Rhalala, qu'est-ce qu'il va encore nous sortir ce vieux tordu ?" Bah, on peut toujours faire plus compliqué, vous devriez commencer à avoir l'habitude.

Je pouvais difficilement passer à côté des conditions multiples, car elles sont très pratiques. Allez, un dernier petit effort et on a bientôt fini.

Ce qu'on va essayer de faire, c'est de donner plusieurs conditions à la fois. Pour cela, on aura besoin de nouveaux mots-clés. Voici les principaux à connaître :

Mot-clé Signification Symbole équivalent

AND Et &&

OR Ou ||

Le symbole équivalent pour OR est consitué de 2 barres verticales. Pour taper une barre

verticale, appuyez sur la touche "Alt Gr" et "6" en même temps (clavier français), ou "Alt Gr" et "&" (clavier belge).

Bah oui faut pas oublier que selon le pays le clavier change.

La première colonne contient le mot-clé en anglais, la troisième son équivalent en symbole. Les deux fonctionnent aussi bien, mais je vous recommande d'utiliser le mot-clé de préférence, c'est plus "facile" à lire (j'espère que vous connaissez un peu l'anglais quand même) Servez-vous de ces mots-clés pour mettre plusieurs conditions entre les parenthèses. Voici un premier exemple :

Source 1.6.4 : une condition avec AND <?

if ($age <= 12 AND $sexe == "garçon") {

echo "Bienvenue sur le site de Captain Mégakill !"; }

elseif ($age <= 12 AND $sexe == "fille") {

echo "C'est pas un site pour les filles ici, retourne jouer à la Barbie !"; }

?>

C'est tout simple en fait et ça se comprend très bien : si l'âge est inférieur ou égal à 12 ans et que c'est un garçon, on lui permet d'accéder au site de son superhéro préféré.

Sinon, si c'est une fille dont l'âge est inférieur ou égal à 12 ans, on l'envoie gentiement ballader (hum hum, m'accusez pas de sexisme hein, c'était juste pour l'exemple).

Bon allez, un dernier exemple avec OR pour que vous l'ayez vu au moins une fois, et on arrête là. Source 1.6.5 : une condition avec OR

<?

if ($sexe == "fille" OR $sexe == "garçon") {

echo "Salut Terrien !"; }

else {

echo "Euh, si t'es ni une fille ni un garçon, t'es quoi alors ?"; }

?>

Documents relatifs