Boucles for et while

Pourquoi utiliser les boucles

Les boucles sont un outil fondamental pour répéter une opération un certain nombre de fois, pour parcourir un ensemble de données dans un tableau.

Imaginons que l’on veut créer 10 éléments de type "div" carrés dans une page html. On pourra écrire.

<div style="width:100px;height:100px;background-color:red">1</div>
<div style="width:100px;height:100px;background-color:red">2</div>
<div style="width:100px;height:100px;background-color:red">3</div>
<div style="width:100px;height:100px;background-color:red">4</div>
<div style="width:100px;height:100px;background-color:red">5</div>
<div style="width:100px;height:100px;background-color:red">6</div>
<div style="width:100px;height:100px;background-color:red">7</div>
<div style="width:100px;height:100px;background-color:red">8</div>
<div style="width:100px;height:100px;background-color:red">9</div>
<div style="width:100px;height:100px;background-color:red">10</div>

Fastidieux. Mais si on vous demande d’en faire 200, Ça devient l’enfer.

Avec une boucle, ce sera le même travail d’en faire 20 ou 300. Voici :

<?php 
for($a=1;$a<30;$a++){
echo "<div style=\"width:100px;height:100px;background-color:red\">".$a."</div>"
}

Remarquez que la variable qui sert àdéterminer le nombre de répétitions sert àl’intérieur de la boucle, c’est une variable comme une autre.

Principe des boucles

Une boucle répète les instructions contenues entre les accolades tant que la condition entre les parenthèses est vraie.
Dans l’exemple ci dessus, la boucle se répète tant que $a est inférieur à30. Cette variable $a est initialisée avec la valeur 1, et sa valeur augmentera de 1 àchaque fois que la boucle est répété ($a++ signifie "incrémenter $a" de 1).

Attention

donc àce que la condition puisse être remplie àun moment donné, sans quoi la boucle va se répéter àl’infini et votre code va planter...

la boucle for

<?php
// Boucle for
echo "<h2>Boucle for</h2>";
for ($i=0;$i<15; $i++){
echo $i."<br />";
}
?>

La boucle while

Ici, le code est plus simple, et donc plus dangereux. La boucle se répète tant que la condition entre parenthèses est vraie, et c’est àvous, entre les accolades, qui devez rendre fausse cette condition, sous peine de voir la boucle tourner folle.

<?php
// boucle while
echo "<h2>Boucle while</h2>";
$i=0;
while($i!=30){

$i++;
echo $i."<br />";
}
?>

La boucle foreach

La boucle foreach permet de parcourir une variable tableau élément par élément. Elle est très pratique notamment pour afficher des résultats sortant d’une base de donnée.

$liste=array("un","jour","mon","prince","viendra");
foreach($liste as $element){
echo $element."<br />";
}

$liste, qui est un tableau d’élément, est parcouru par la boucle foreach, la variable $element reçoit chaque élément de la liste dans l’ordre, àchaque tour. La boucle s’arrête après avoir listé le dernier élément.