Arrêter une boucle for
Fermé
t671
Messages postés
1462
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
21 décembre 2024
-
Modifié par t671 le 17/03/2016 à 16:04
greg6614 Messages postés 592 Date d'inscription vendredi 7 août 2009 Statut Membre Dernière intervention 3 juin 2017 - 18 mars 2016 à 21:28
greg6614 Messages postés 592 Date d'inscription vendredi 7 août 2009 Statut Membre Dernière intervention 3 juin 2017 - 18 mars 2016 à 21:28
A voir également:
- Arrêter une boucle for
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Copytrans heic for windows - Télécharger - Visionnage & Diaporama
- Download instagram for pc - Télécharger - Divers Communication
- Idm for mac - Télécharger - Téléchargement & Transfert
- Whatsapp for pc - Télécharger - Messagerie
4 réponses
Utilisateur anonyme
17 mars 2016 à 17:49
17 mars 2016 à 17:49
Bonjour
C'est l'instruction
https://www.php.net/manual/fr/control-structures.break.php
C'est effectivement souvent bien pratique.
C'est l'instruction
breakqui permet de sortir d'une boucle en PHP :
https://www.php.net/manual/fr/control-structures.break.php
C'est effectivement souvent bien pratique.
t671
Messages postés
1462
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
21 décembre 2024
11
17 mars 2016 à 16:45
17 mars 2016 à 16:45
Oui, mais parfois on peut avoir envie d'arrêter la boucle pour une raison quelconque !!!
t671
Messages postés
1462
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
21 décembre 2024
11
17 mars 2016 à 18:19
17 mars 2016 à 18:19
Merci, mais si je met break dans le else, ça marche pas !!!!
Par contre, tu vas peut-être pouvoir me trouver une solution ..........
Dans ma boucle ci-dessus, quand j'écris :
si la condition est ok, j'affiche les éléments liés à "conjoint" par un select.
Mais si la condition n'est pas ok, je veux tester avec le $i suivant.
Comment l'écrire ?
Par contre, tu vas peut-être pouvoir me trouver une solution ..........
Dans ma boucle ci-dessus, quand j'écris :
if ($tonarray[$i]['conjoint'] != "")
si la condition est ok, j'affiche les éléments liés à "conjoint" par un select.
Mais si la condition n'est pas ok, je veux tester avec le $i suivant.
Comment l'écrire ?
greg6614
Messages postés
592
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
3 juin 2017
107
17 mars 2016 à 18:27
17 mars 2016 à 18:27
Je pense pas avoir compris ta question mais justement si ta condition dans est fausse, tu ne fais rien et tu laisse ton for se dérouler pour tester avec le prochain i.
greg6614
Messages postés
592
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
3 juin 2017
107
Modifié par greg6614 le 18/03/2016 à 21:29
Modifié par greg6614 le 18/03/2016 à 21:29
Tu peux rajouter un booleen dans ta condition de FOR qui lorsqu'il devient faux rend ta condition fausse.
Exemple avec ton code :
Exemple avec ton code :
$select2 = 'SELECT * FROM individus WHERE num_pere = "'.$row1['num_indiv'].'" AND (SUBSTRING(date_naissance, -4) < "'.$date2.'") ORDER BY RIGHT(date_naissance,4)'; $result2 = mysqli_query($link,$select2) or die ('Erreur : '.mysqli_error($link) ); while ($row2 = mysqli_fetch_array($result2)) { ........................ $tonarray[0]=array("mariage" => "$marg_1" ,"date_mariage" => $row2['date_mariage_1'] , "conjoint" => $row2['num_cj_1']); $tonarray[1]=array("mariage" => "$marg_2" ,"date_mariage" => $row2['date_mariage_2'] , "conjoint" => $row2['num_cj_2']); $tonarray[2]=array("mariage" => "$marg_3" ,"date_mariage" => $row2['date_mariage_3'] , "conjoint" => $row2['num_cj_3']); $tonarray[3]=array("mariage" => "$marg_4" ,"date_mariage" => $row2['date_mariage_4'] , "conjoint" => $row2['num_cj_4']); asort($tonarray); $stop = true; for($i=0; $i<=3 && $stop; $i++) { if ($tonarray[$i]['conjoint'] != "") { $query4 = 'SELECT * FROM individus WHERE num_indiv LIKE '.$tonarray[$i]['conjoint'].' '; $result4 = mysqli_query($link,$query4) or die(mysqli_error($link)); $row4 = mysqli_fetch_array($result4); ................ } else { $stop = false; } } $select2 = 'SELECT * FROM individus WHERE num_pere = "'.$row2['num_indiv'].'" AND (SUBSTRING(date_naissance, -4) < "'.$date2.'") ORDER BY RIGHT(date_naissance,4)'; } $result2 = mysqli_query($link,$select2) or die ('Erreur : '.mysqli_error($link) );
Arkana0
Messages postés
6365
Date d'inscription
mercredi 11 février 2009
Statut
Modérateur
Dernière intervention
10 février 2023
181
17 mars 2016 à 16:14
17 mars 2016 à 16:14
Bonjour,
Normalement, le principe d'une boucle c'est de tourner un nombre limité de fois, si ça n'est pas le cas, c'est qu'elle a été détournée de sa fonction originelle...
Normalement, le principe d'une boucle c'est de tourner un nombre limité de fois, si ça n'est pas le cas, c'est qu'elle a été détournée de sa fonction originelle...
18 mars 2016 à 11:01
18 mars 2016 à 17:02
Si tu as lu le lien que je t'ai mis :
La valeur par défaut est 1, seulement la structure emboitée immédiate est interrompue.
Si ton while s'arrête aussi, c'est pour une autre raison, à toi de voir laquelle.