Bonjour à tous !

Je vous expose mon problème :

Je souhaite arrêter une boucle FOR. Je pensais que le code suivante marcherais mais malheureusement ça fait planter mon navigateur car elle ne s'arrête jamais :

imaginez le code suivant simple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
 
$d[1] = 0;
$d[2] = 0;
$d[3] = 0;
$d[4] = 0;
$d[5] = 0;
 
for ($i = 1; $i <= 5; $i++)
{
     if ($d[$i] = 1)
     {
         break;
     }
     else
     {
         $i = "";
     }
}
Alors la chose que je me dis c'est que la boucle va être parcouru de 1 à 5, la variable $i prenant ainsi successivement les valeurs 1,2,3,4 puis 5 et enfin s'arrêter se rendant compte que pour n'importe qu'elle $i appartenant à [1;5], $d[$i] n'est jamais égal à 1.

D'où le fameux ELSE devant renvoyer $i = "";

Cependant il s'avère que l'itération se piège dans la boucle for et la réitère à l'infini.... Ce qui fait tout planter forcément.

Ma question est donc, comment intégrer une condition supplémentaire dans la boucle FOR afin qu'elle n'effectue l'opération qu'une seule fois.

Merci d'avance pour vos réponses !

Cordialement,
Globolite