Marco: switch und continue

Beitrag lesen

Bedenke 'switch' ist keine Schleife!!! sondern eine 'Entscheidungshilfe'(ich 'nen es mal so )

Die bedingungen werden nach und nach abgeklappert, wenn eine zutrifft, wird der gesamte code darunter ausgeführt.
Abbrechen kann man das mit break.
Und aus, mehr gibt's nicht.

In der PHP-Dokumentation steht bei switch folgendes:
Anmerkung:  Beachten Sie bitte, dass im Unterschied zu anderen Programmiersprachen die continue  Anweisung auch bei switch ihre Gültigkeit hat und ähnlich wie break funktioniert. Falls Sie switch innerhalb einer Schleife verwenden und mit dem nächsten Durchlauf der äußeren Schleife beginnen möchten, verwenden Sie continue 2.

Bitte berichtigen, falls auf dem Holzweg.

Wie hast Du es denn gelöst?

Ich habe jetzt eine Schleife um die switch-Anweisung gepackt. So kann ich immer die switch-Anweisung nochmal mit "continue 2;" die switch-Abfrage nochmal ablaufen lassen. Die Schleife ist eigentlich eine unendliche Schleife, wird jedoch durch ein break unter der switch-Anweisung beendet. Ich weiß, dass es nicht so schön ist, klappt aber bestens. Ich habe auch schon an eine rekursive Funktion gedacht, aber da müsste ich dann alle Variablen übergeben oder global machen und das ist zu viel Arbeit. Deshalb habe ich es jetzt so gelöst.

Mich wundert aber wirklich, dass in der Dokumentation nicht steht, dass das continue nicht so richtig funktioniert oder dass es niemand anderes mal ausprobiert hat, es steht nämlich nichts in den Benutzerkommentaren.

Marco

mfg dolito