Programmation PHP/Boucles

Un livre de Wikilivres.
Aller à : navigation, rechercher



Une boucle est une instruction qui exécute un code tant qu'une condition établie est vérifiée. Si la condition est toujours vérifiée, on se trouve dans une boucle infinie. Les boucles permettent le parcours des tableaux et d'utiliser des données rendues sous la forme de tableau par une fonction de php dialoguant par exemple avec un autre langage.

Il en existe de trois types :

  1. while() { }
  2. for() {}
  3. foreach() {}

while[modifier | modifier le wikicode]

while est un mot anglais signifiant "tant que" en français. Le programme exécute une routine tant que la condition est vraie.

while (condition) {
  instructions(s);
}

for[modifier | modifier le wikicode]

for est un mot anglais signifiant "pour" en français. Le programme exécute une routine pour des valeurs d'une variable qui vérifient une certaine condition. Généralement cette condition est de type "intervalle", c'est-à-dire pour des valeurs plus petites qu'une borne.

  for(première expression ; condition d'arrêt ; itération) {
    instruction;
  }
  • Le premier élément est exécuté au début de la boucle dans tous les cas.
  • Le second élément (la condition) est testé avant chaque exécution de l'instruction ou itération, s'il renvoie TRUE l'instruction sera exécutée, si FALSE est renvoyé on sort de la boucle.
  • La dernière expression est exécutée après chaque itération.

Attention la structure dans la parenthèse est for( ; ; )

foreach[modifier | modifier le wikicode]

Les boucles foreach apparues avec PHP 4, constituent une manière simple de parcourir des tableaux. Il existe deux syntaxes :

  • La plus simple s'intéresse aux clés dans les tableaux. Le type de ces clés dépend des valeurs contenues dans le tableau. foreach simplifie une tache qui aurait certes été possible avec for, mais fastidieuse :
Intérêt de foreach
Avec for Avec foreach
  $array = array('valeur1', 'valeur2', 'valeur3');
  for($i = 0; $i < count($array); $i++) { 
    echo $array[$i]; //renvoie "valeur1valeur2valeur3"
  }
  $array = array('valeur1', 'valeur2', 'valeur3');
  foreach($array as $value) { 
    echo $value; // renvoie "valeur1valeur2valeur3"
  }

as signifiant "comme", on récupère une variable contenant la valeur dans la cellule correspondante.

  • La seconde se penche d'avantage sur les tableaux associatifs du type
  $array = array( "ville" => "Montargis", "température" => "15 degrés" );

Ainsi on récupère le nom de la clé et la valeur du champ. En fait la structure $cle => $valeur est celle de la déclaration du tableau.

  foreach($array as $cle => $valeur) {
    commandes;
  }

Par ailleurs, il est possible d'itérer des objets depuis PHP 5.

break et continue[modifier | modifier le wikicode]

Les mots clés :

  • break : sort de la boucle avant la fin.
  • continue : passe immédiatement à l'itération suivante.