Hallöle,
PHP continues to execute the statements until the end of the switch block, or the first time it sees a break statement.
Du hast das missinterpretiert. Sees heißt hier nicht, dass er das erste Vorkommen zählt, sondern das erste break, auf das er bei der Ausführung trifft. Ist die Bedingung nicht erfüllt, trifft er Interpreter nicht auf das break.
Ich hatte ja geschrieben, "wenn die Bedingung zutrifft".
Tatsächlich bricht das break im if in der while-Schleife im case aber nicht den case ab, sondern lediglich die while-Schleife.
Es müßte also eigentlich heißen (Ergänzung mit ### markiert):
PHP continues to execute the statements until the end of the switch block, or the first time it sees a break statement ### which is not inside a while, for, foreach, do or nested switch statement ###.
cu,
Robert