Menu
Coddy logo textTech

continue-Anweisung

Teil des Abschnitts Grundlagen der PHP-Journey von Coddy — Lektion 52 von 71.

Während break eine Schleife vollständig beendet, möchten Sie manchmal nur die aktuelle Iteration überspringen und mit der nächsten fortfahren. Genau dafür dient die continue-Anweisung.

Wenn PHP auf continue trifft, springt es sofort zur nächsten Iteration der Schleife und überspringt den restlichen Code in der aktuellen Iteration.

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

Dies gibt aus:

1
2
4
5

Beachten Sie, dass 3 fehlt. Wenn $i gleich 3 ist, überspringt die continue-Anweisung das echo und geht direkt zur nächsten Iteration über, in der $i zu 4 wird.

Ein häufiger Anwendungsfall ist das Filtern unerwünschter Werte beim Verarbeiten eines Arrays:

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

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

Das druckt nur die positiven Zahlen aus: 10, 8 und 12. Die negativen Werte werden übersprungen, aber die Schleife läuft durch alle Elemente weiter.

Der wesentliche Unterschied: break beendet die Schleife vollständig, während continue nur zur nächsten Iteration springt.

challenge icon

Aufgabe

Einfach

Lesen Sie zwei Zeilen der Eingabe:

  1. Eine durch Kommas getrennte Liste von Ganzzahlen (z. B. 3,7,12,5,8,20,15)
  2. Eine Divisor-Zahl

Verwenden Sie eine foreach-Schleife, um durch das Array zu iterieren. Verwenden Sie continue, um Zahlen zu überspringen, die durch den gegebenen Divisor teilbar sind. Drucken Sie alle anderen Zahlen, jede in einer separaten Zeile.

Beispiel 1:

Wenn die Eingaben 1,2,3,4,5,6,7,8,9,10 und 3 sind, sollte die Ausgabe sein:

1
2
4
5
7
8
10

(Die Zahlen 3, 6 und 9 werden übersprungen, da sie durch 3 teilbar sind)

Beispiel 2:

Wenn die Eingaben 10,15,20,25,30 und 5 sind, sollte die Ausgabe sein:

(Alle Zahlen sind durch 5 teilbar, daher wird nichts gedruckt)

Beispiel 3:

Wenn die Eingaben 7,14,21,10,5 und 7 sind, sollte die Ausgabe sein:

10
5

Spickzettel

Die continue-Anweisung überspringt die aktuelle Iteration einer Schleife und geht zur nächsten über, ohne die Schleife vollständig zu verlassen.

Einfaches Beispiel mit for-Schleife:

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

Dies gibt 1, 2, 4, 5 aus (überspringt 3).

Verwendung von continue mit foreach zum Filtern von Array-Werten:

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

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

Dies druckt nur positive Zahlen (10, 8, 12) aus und überspringt negative Werte.

Wichtiger Unterschied: break verlässt die Schleife vollständig, während continue nur zur nächsten Iteration springt.

Probier es selbst

<?php
// Eingabe lesen
$input = trim(fgets(STDIN));
$divisor = intval(trim(fgets(STDIN)));

// Komma-separierten String in Array von Ganzzahlen umwandeln
$numbers = array_map('intval', explode(',', $input));

// TODO: Schreibe deinen Code unten
// Verwende eine foreach-Schleife, um durch $numbers zu iterieren
// Verwende continue, um Zahlen zu überspringen, die durch $divisor teilbar sind
// Drucke alle anderen Zahlen, jede in einer separaten Zeile

?>
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen