PHP Les boucles for et foreach

PHP cours tutorial

Les boucles for et foreach en PHP

La boucle for :

Si vous connaissez le nombre de fois que le script devrait être exécuté, La boucle que vous devriez utiliser est la boucle for .
Syntaxe

for (début ; condition ; incrément) { code à  exécuter ; }

Paramètres :
- début : La plupart du temps utilisé pour commencer un compte- (mais peut être n'importe quel code à  exécuter une fois au début de la boucle)
- condition : c’est la condition qui sera vitrifiée pour chaque passage de la boucle. Si cette condition est évaluée VRAI la boucle continuera. Par contre si elle est évaluée à FAUX, la boucle s’arrête.
- incrément : La plupart du temps utilisé pour incrémenter un compte
Note : Chacun des paramètres ci-dessus peut être vide, ou peut avoir plusieurs expressions (séparées par des virgules).
Exemple
L'exemple ci-dessous définit une boucle qui commence par i=1. La boucle continuera à  fonctionner tant que I est inférieur ou égale à  5. i est augmenté de 1 chaque fois que la boucle fonctionne :

Sélectionner le code


	<html>
	<body>

	<?PHP
	for ($i=1 ; $i<=5 ; $i++)
	  {
	  echo " le nombre est ". $i. " <br/> " ;
	  }
	?>

	</body>
	</html>

 

Résultat :

Le nombre est 1
Le nombre est 2
Le nombre est 3
Le nombre est 4
Le nombre est 5




La boucle foreach

La boucle foreach, est un outil simple de passer en défilé un tableau.
Foreach ne fonctionne que sur les tableaux et les objets.
la commande foreach retournera une erreur si vous tentez de l'utiliser sur d’autre type variable que des tableaux ou des objets. Il y a deux syntaxes possibles : la seconde est une extension mineure mais pratique que la première.

La première forme passe en revue le tableau $array. À chaque itération, la valeur de l'élément courant est assignée à $value et le pointeur interne de tableau est avancé d'un élément (ce qui fait qu'à la prochaine itération, on accédera à l'élément suivant).
Syntaxe 1

foreach ($array as $value)
{
code à exécuter ;
}

La deuxième forme fait exactement la même chose, mais c'est la clé de l'élément courant(son index dans le tableau) qui est assigné à la variable $key.
Syntaxe 2

foreach ($array as $key)
{
code à exécuter ;
}

Pour chaque passage de la boucle, la valeur de l'élément de tableau courant est assignée à $value (et à l'indicateur de rangée est déplacé par on) - ainsi sur le prochain passage de boucle, vous avez la prochaine valeur de la série.

Il est possible d'itérer également sur des objets.

Exemple
L'exemple suivant démontre une boucle qui imprimera les valeurs de la série donnée :

Sélectionner le code

 	
	<html>
	<body>

	<?PHP
	$x=array ("lundi", " mardi ", " jeudi ") ;
	foreach ($x as $value)
	  {
	  echo "Le jour est ".$value. " <br/> " ;
	  }
	?>

	</body>
	</html>

 

Résultat :

Le jour est lundi
Le jour est mardi
Le jour est jeudi



Note:
Lorsque foreach démarre, elle démarre toujours avec son pointeur interne du tableau automatiquement ramené au premier élément du tableau. Et donc vous n'aurez pas à faire appel à la fonction reset() avant foreach.
La boucle foreach opère sur une copie des valeurs du tableau spécifié et non sur les valeurs elles-mêmes sauf si le tableau soit une référence. foreach affecte le pointeur interne du tableau. Ne l'utilisez pas sans le remettre à zéro avant.



Par carabde 20 Aout 2014