65 votes

sauter l'itération en cours

J'ai un tableau php $numbers = array(1,2,3,4,5,6,7,8,9)

si je boucle dessus en utilisant un foreach foreach($numbers as $number)

et avoir une instruction if if($number == 4)

quelle serait la ligne de code après cela qui sauterait n'importe quoi après cette ligne et démarrerait la boucle à 5 ? pause, retour, sortie ?

129voto

Matthew Scharley Points 43262

Vous recherchez l'instruction continue. Break est également utile, ce qui permet de quitter complètement la boucle. Les deux instructions fonctionnent avec toutes les variantes de boucle, c'est-à-dire. for , foreach et while .

 $numbers = array( 1, 2, 3, 4, 5, 6, 7, 8, 9 );
foreach( $numbers as $number ) {
    if ( $number == 4 ) { continue; }
    // ... snip
}

23voto

Brad Christie Points 58505
continue;

Continuer lui dira d'ignorer le bloc d'itération en cours, mais de continuer avec le reste de la boucle. Fonctionne dans tous les scénarios (pour, pendant, etc.)

9voto

Jaymin Points 37

Casser; arrêtera la boucle et fera sortir le compilateur de la boucle. tout en continuant; sautera simplement le cycle actuel et passera au cycle suivant. Comme:

 $i = 0;
while ($i++)
{
    if ($i == 3)
    {
        continue;
    }
    if ($i == 5)
    {
        break;
    }
    echo $i . "\n";
}

Sortir:

 1
2
4
6 <- this won't happen

2voto

dinel Points 41

Je suppose que vous recherchez une déclaration continue. Jetez un œil à http://php.net/manual/en/control-structures.continue.php

dîner

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X