flush

(PHP 4, PHP 5, PHP 7)

flushLeert (sendet) den Ausgabepuffer

Beschreibung

flush ( void ) : void

Sendet den Inhalt des Ausgabepuffers und des darunterliegenden PHP Backends (CGI, Apache, ...). Die bisherigen Ausgaben werden damit soweit wie möglich in Richtung des Users weitergereicht.

flush() hat keinen Einfluss auf das Pufferverhalten des Webservers oder des Browsers auf der Clientseite. Es hat auch keinen Einfluss auf mit ob_start() erstellte Ausgabebuffer. Daher müssen Sie sowohl ob_flush() als auch flush() aufrufen, um die Ausgabebuffer zu leeren.

Einige Webserver, besonders auf Windows (Win32), puffern ihre Scriptausgaben weiterhin bis zum Scriptende bevor sie sie zum Browser übertragen.

Auch Apache-Module wie mod_gzip puffern zum Teil Ausgaben und verhindern so, dass Ausgaben nach flush() direkt an den Client weitergegeben werden.

Selbst Browser können empfangene Ausgaben puffern bevor sie sie tatsächlich darstellen. Netscape Browser z.B. puffern Text bis sie entweder einen Zeilenwechsel oder den Anfang eines Tags empfangen und zeigen Tabellen erst nach dem Empfang des </table> Tags der äußersten Tabelle.

Einige Versionen des Microsoft Internet Explorers beginnen erst dann mit der Ausgabe wenn sie mindestens 256 Bytes empfangen haben. Sie müssen daher eventuell zusätzliche Leerzeichen in Ihre Ausgaben einfügen um eine Darstellung vor Skriptende auf solchen Browsern zu erzwingen.

Rückgabewerte

Es wird kein Wert zurückgegeben.

Siehe auch

  • ob_flush() - Leert (sendet) den Ausgabepuffer
  • ob_clean() - Löscht den Ausgabepuffer
  • ob_end_flush() - Leert (schickt/sendet) den Ausgabe-Puffer und deaktiviert die Ausgabe-Pufferung
  • ob_end_clean() - Löscht den Ausgabe-Puffer und deaktiviert die Ausgabe-Pufferung