Menu
Coddy logo textTech

Instruction continue

Fait partie de la section Fondamentaux du Journey PHP de Coddy — leçon 52 sur 71.

Tandis que break sort complètement d'une boucle, parfois vous ne voulez qu'ignorer l'itération actuelle et passer à la suivante. C'est exactement ce que fait l'instruction continue.

Lorsque PHP rencontre continue, il passe immédiatement à l'itération suivante de la boucle, en sautant tout code restant dans l'itération actuelle.

<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i === 3) {
        continue;
    }
    echo $i . "\n";
}
?>

Cela produit :

1
2
4
5

Remarquez que 3 manque. Lorsque $i vaut 3, l'instruction continue saute le echo et passe directement à l'itération suivante où $i devient 4.

Un cas d'utilisation courant est de filtrer les valeurs indésirables lors du traitement d'un tableau :

<?php
$numbers = [10, -5, 8, -3, 12];

foreach ($numbers as $num) {
    if ($num < 0) {
        continue;
    }
    echo $num . "\n";
}
?>

Ceci affiche uniquement les nombres positifs : 10, 8 et 12. Les valeurs négatives sont ignorées, mais la boucle continue à parcourir tous les éléments.

La différence clé : break arrête la boucle complètement, tandis que continue ne saute que vers l'itération suivante.

challenge icon

Défi

Facile

Lisez deux lignes d'entrée :

  1. Une liste d'entiers séparés par des virgules (par exemple, 3,7,12,5,8,20,15)
  2. Un nombre diviseur

Utilisez une boucle foreach pour itérer à travers le tableau. Utilisez continue pour ignorer les nombres qui sont divisibles par le diviseur donné. Affichez tous les autres nombres, chacun sur une ligne séparée.

Exemple 1 :

Si les entrées sont 1,2,3,4,5,6,7,8,9,10 et 3, la sortie devrait être :

1
2
4
5
7
8
10

(Les nombres 3, 6 et 9 sont ignorés car ils sont divisibles par 3)

Exemple 2 :

Si les entrées sont 10,15,20,25,30 et 5, la sortie devrait être :

(Tous les nombres sont divisibles par 5, donc rien n'est imprimé)

Exemple 3 :

Si les entrées sont 7,14,21,10,5 et 7, la sortie devrait être :

10
5

Aide-mémoire

L'instruction continue saute l'itération actuelle d'une boucle et passe à la suivante, sans quitter complètement la boucle.

Exemple de base avec une boucle for :

<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i === 3) {
        continue;
    }
    echo $i . "\n";
}
?>

Ceci affiche 1, 2, 4, 5 (en sautant 3).

Utilisation de continue avec foreach pour filtrer les valeurs d'un tableau :

<?php
$numbers = [10, -5, 8, -3, 12];

foreach ($numbers as $num) {
    if ($num < 0) {
        continue;
    }
    echo $num . "\n";
}
?>

Ceci affiche uniquement les nombres positifs (10, 8, 12), en sautant les valeurs négatives.

Différence clé : break quitte complètement la boucle, tandis que continue ne saute que vers l'itération suivante.

Essayez vous-même

<?php
// Lire l'entrée
$input = trim(fgets(STDIN));
$divisor = intval(trim(fgets(STDIN)));

// Convertir la chaîne séparée par des virgules en tableau d'entiers
$numbers = array_map('intval', explode(',', $input));

// TODO: Écrivez votre code ci-dessous
// Utiliser une boucle foreach pour itérer à travers $numbers
// Utiliser continue pour ignorer les nombres divisibles par $divisor
// Afficher tous les autres nombres, chacun sur une ligne séparée

?>
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux