Sven Rautenberg: flush(), sleep() funktioniert nicht wie es sollte

Beitrag lesen

Moin!

Also normalerweise sollte ja erst Zeile 1,2 & 3 ausgegeben werden, dann sollte normalerweise 3 Sekunden Pause sein und dann sollten die letzten Zeilen ausgegeben werden.
Nun, leider ist dem nicht so ... aber WIESO!? Der Code wirst erst nach 3 Sekunden komplett dann ausgeführt, sprich 3 Sekunden lädt das Script, dann wird es komplett ausgegeben.

Die Ausgabe an den Browser wird gepuffert. Der Puffer kriegt nach dem Start des Skripts sofort die ersten drei Zeilen, und nach 3 Sekunden den Rest reingeschrieben. Dann endet das Skript, und der Puffer wird an den Browser geschicht... das Ergebnis ist bekannt.

Deshalb ist die mögliche Lösung, einfach die Pufferung auszuschalten. Ich hab keinen blassen Schimmer, wie man das machen könnte in PHP, aber wenn du danach mal etwas suchst, findest du sicher was. :)

- Sven Rautenberg