Les boucles en PHP
Ce qu’il y a de bien avec PHP c’est que notre site devient dynamique et heureusement. On ne pourrait pas modifier toute nos pages a la main pour afficher les commentaires d’un article ou lister des fichiers….
La boucle for
<?php // Affiche 10 lignes: for ($i = 1; $i <= 10; $i++) { echo "Ligne N°".$i."<br>\n"; } ?>
Ca va afficher 10 fois:
Ligne N°1
Ligne N°2
Ligne N°3
…
Ligne N°10
La boucle while
Je la trouve moins pratique personnellement, l’exemple va faire la même chose que la boucle for:
<?php // Affiche aussi 10 lignes: $i = 1; while ($i <= 10) { echo "Ligne N°".$i++."<br>\n"; } ?>
La boucle foreach
C’est sans doute celle qu’on utilise le plus, elle permet d’afficher un array:
<?php $array = array(1, "deux", 3, "quatre"); foreach ($array as $value) { echo $value."<br>\n"; } ?>
Cet exemple permet d’afficher en plus la clé de l’array qui va avec ça valeur:
<?php $array = array(1, "deux", 3, "quatre"); foreach ($array as $key => $value) { echo $key." => ".$value."<br>\n"; } ?>
Ici, on a un array plus complexe:
<?php $array = array( array("id_fruit" => 1, "nom_fruit" => "orange"), array("id_fruit" => 2, "nom_fruit" => "banane"), array("id_fruit" => 3, "nom_fruit" => "pomme"), ); foreach ($array as $key => $value) { echo $key." => id_fruit: ".$value['id_fruit'].", nom_fruit: ".$value['nom_fruit']."<br>\n"; } ?>
Ce qui va afficher:
0 => id_fruit: 1, nom_fruit: orange
1 => id_fruit: 2, nom_fruit: banana
2 => id_fruit: 3, nom_fruit: apple
On peut aussi afficher un array avec la boucle for comme on le fait avec la boucle foreach.
Pour cela on doit compter l’array avec count() et enlever 1, car les clés d’un array commencent à 0.
<?php $array = array("orange", "banane", "pomme", "abricot", "poire"); // Affiche 10 lignes: for ($i = 0; $i <= count($array)-1; $i++) { echo "Clé: ".$i.", valeur: ".$array[$i]."<br>\n"; } ?>
Tous les codes sont testés et sont fonctionnels, si il arrive qu'un de ces codes ne fonctionne pas chez vous, merci de me le signaler.