Accueil » Articles » Développez des sites web dynamiques avec PhP et MySQL [Tuto en cours]

Développez des sites web dynamiques avec PhP et MySQL [Tuto en cours]

CHAPITRE 6 : LES BOUCLES

Définition et utilité

En PhP, nous aurons souvent besoin d’exécuter un même bloc de code plusieurs fois d’affilée, par exemple pour afficher un message ou effectuer une action tant que la valeur d’une variable ne dépassera pas un certain seuil, ou pour parcourir un tableau.

Pour effectuer ces tâches, nous allons utiliser des boucles, qui permettent justement d’exécuter plusieurs fois un même code tant qu’une condition donnée est vérifiée.

Attention, la condition donnée doit être fausse à un moment ou l’autre, sinon la boucle continuerait à l’infini et cela aurait pour effet de faire planter votre site !

Nous disposons de quatre types de boucles différents en PhP :

  • La boucle while
  • La boucle do…while
  • La boucle for
  • La boucle foreach

La boucle while

La boucle while (« tant que ») est certainement la boucle la plus simple à appréhender. Elle exécute un bloc de code tant qu’une condition donnée est vérifiée.

Voyons immédiatement notre première boucle :

Comment créer une boucle while en php

Illustration de l'utilisation de la boucle PhP while

Que se passe t-il dans l’exemple ci-dessus ? Tout d’abord, on attribue la valeur 1 à la variable x. Ensuite, on rentre dans la boucle. Tant que x possède une valeur inférieure à 10, on reste dans la boucle et on exécute une nouvelle fois les instructions à l’intérieur de celle-ci.

A la fin de chaque tour, on incrémente la variable x (c’est-à-dire on augmente sa valeur de 1).

Ainsi, au départ, le variable x vaut 1. Lors du deuxième tour dans la boucle, celle-ci vaut 2 et ainsi de suite jusqu’à arriver à 10 qui est la valeur « stop » qui va nous faire sortir de la boucle.

La boucle do…while

La boucle do…while (faire…tant que) ressemble beaucoup à la boucle while à première vue mais fonctionne dans le sens contraire.

Cette boucle va tout d’abord exécuter le bloc de code donné une première fois, puis va ensuite seulement vérifier la condition. Si celle-ci est vérifiée, on va faire un nouveau tour dans la boucle et ainsi de suite tant que la condition sera vérifiée.

En reprenant notre exemple précédent, cela donnerait avec la boucle do…while :

Création d'une boucle do while en PhP

On voit bien ce qui change par rapport à la boucle while dans la boucle do…while : la condition est cette fois ci testée après que le premier passage dans la boucle ait été effectué et donc après que le code ait été exécuté une fois.

Cela a plusieurs implications, et notamment le fait que le code à l’intérieur d’une boucle do…while sera toujours exécuté au moins une fois, même si la condition n’est jamais vérifiée.

Regardez ce nouvel exemple pour vous en persuader :

Un autre exemple de boucle do while en PhP

Illustration de l'utilisation d'une boucle PhP do while

La boucle for

La grosse différence entre les boucles de type for et les boucles de type while est que, dans le cas des boucles de type for, on va spécifier le nombre de passage dans la boucle, c’est-à-dire le nombre de fois où l’on va faire se répéter les instructions à l’intérieur de la boucle.

On utilisera donc la boucle for lorsque l’on sait en avance combien de fois le code à l’intérieur de la boucle devra être exécuté.

La boucle for dispose d’une syntaxe différente des boucles while et do…while. Cette syntaxe, plus condensée, est la suivante :

Création d'une boucle for en PhP

Illustration d'utilisation d'une boucle for en PhP

Littéralement, cette boucle se traduit de la façon suivante : « pour x égal à 0, et tant que la valeur de x est inférieure à 10, incrémenter la valeur de x et afficher le contenu de x à chaque fois. »

La premier paramètre ($x = 0) s’appelle l’initialisation, le second ($x <= 10) est la condition ou le test tandis que le dernier se nomme l’incrémentation. A noter qu’on appelle ce dernier paramètre l’incrémentation tout simplement car on incrémentera très souvent notre variable au sein des boucles for. Cependant, cela n’est pas du tout une obligation et on pourrait tout aussi bien décrémenter pour notre dernier paramètre comme ceci : On peut aussi bien décrémenter qu'incrémenter dans une boucle PhP for

Illustration de décrémentation d'une boucle for en PhP

Introduction à la boucle foreach

La boucle foreach ne fonctionne qu’avec des variables de type array, il nous faudra donc au préalable avoir vu les tableaux pour exploiter toute la puissance de cette boucle.

Pour le moment, contentez vous donc de savoir que ce type de boucle existe et que c’est celui qui va être le plu souvent utilisé avec les tableaux.

Et justement, en parlant de tableaux, on y arrive puisqu’ils vont être l’objet du chapitre suivant !

16 commentaires

  1. abdelmalek derouich

    merci infiniment pour ces cours, j’été vraiment nul et maintenant je commence à n’avancer dans la création des sites WEB en utilisant le HTML, le CSS et le PHP et c’est grâce à vos cours minutieusement expliqués.

  2. bonjours ,je suis encore un petit peux débutant dans le codage , j’aimerais faire une page d’inscription et une de connexion en php et mysql je dispose d’une base de donnée . merci d’avance pour votre aide .
    ps : j’adore vos vidéo =)

  3. Bocomba William Edouard

    bonjour,

    je suis William un de vos disciple Abidjan. En lisant le code source du site pierre-girraud.fr j’ai constater un bon nombre de balise link et de balise meta. Et je me pose la question de savoir a quoi elle servent? Par ailleurs je suis impatient de savourer la suite du cour sur php et mysql. Merci d’avance et surtout merci pour tout.

    Amicalement

    William

  4. Bonjour,

    Je te remercie de tout mon cœur Pierre!
    Tu consacre ton temps à partager des choses meilleures.
    Je suis débutant mais je croix de devenir pro, tes tutos sont claires et faciles à comprendre.
    Merci infiniement

  5. Salut, c’est vraiment génial ce que tu fais mais j’ai encore un problème, je n’arrive pas a créer un formulaire pour envoyer un mail ou pouvoir communiquez avec moi (pas un bloc mais vraiment une page de contact).
    Merci de bien vouloir m’aider…

    • Bonjour,

      J’explique déjà tout cela dans mes cours HTML / CSS et PhP… Je ne peux donc que vous conseillez de revoir les parties consacrées à cela (lien pour envoyer un fichier / un mail et partie formulaire HTML et PhP).

      Bonne continuation,
      Pierre

  6. Vous etes genial, j’ai vu vos cours sur youtube et votre adresses qui ma poussé avenir sur votre site. Mr pierre je suis un petit zero de la programmation mais suis pas mal j’aimerai vous assistez dans vos taches pour me former…! merci pour les cours suis content

  7. je voudrais que tu m’explique un peut comment fonctionne les fonction static en phph

  8. bonjour
    merci pour ce cours mais je ne vois pas la partie base de données et pourtant l’intitulé c’est cours complet!!!!

  9. Salut Pierre Giraud,

    Je viens de regarder le tuto sur HTML et CSS, c’est magnifique !!!
    Maintenant j’aimerais creer des sites dynamiques avec PHP MySQL.
    Pourriez vous m’aider s’il vous plait. Merci de votre aide en envoyant des tuto tres tres interessant.

Répondre

Votre adresse email ne sera pas publiée. Les champs obligatoires sont marqués d'une étoile *

*