Heim  >  Artikel  >  Backend-Entwicklung  >  PHP: Detaillierte Erläuterung der Nutzungsunterschiede zwischen Flush() und ob_flush(), ob_end_flush()

PHP: Detaillierte Erläuterung der Nutzungsunterschiede zwischen Flush() und ob_flush(), ob_end_flush()

伊谢尔伦
伊谢尔伦Original
2017-06-24 13:10:153668Durchsuche

Lassen Sie uns zunächst über den Puffer sprechen. Es handelt sich um einen Speicheradressraum, der 4096 (1 KB) groß ist. [Finden Sie die Konfiguration „output_buffering“ in der php.iniKonfigurationsdatei]. Output_buffering-Mechanismus. Der PHP-Code wird ausgeführt. Der Inhalt wird nicht sofort ausgegeben, sondern der Echo-/Druckinhalt wird an den Puffer ausgegeben. Wenn der Puffer voll ist, werden die Daten an den Systemkern übergeben Wenn der PHP-Output_Buffering-Mechanismus aktiviert ist, wird er vom TCP an den Browser übergeben (er ist standardmäßig aktiviert und kann nur dann aktiviert werden, wenn die Daten im PHP-Puffer den eingestellten Wert erreichen). Die Daten im Puffer werden an den Browser gesendet. Einige Browser verfügen jedoch auch über Caches, wenn die Daten 256 Bytes erreichen Wenn der Puffer aktiviert ist, werden alle Nicht-Datei-Header-Informationen vom PHP-Programm nicht gesendet, sondern im internen Puffer gespeichert. Um den Inhalt des Puffers auszugeben, können Sie
ob_end_flush
() oder Flush() verwenden, um den Inhalt des Puffers auszugeben.
flush: Aktualisieren Sie den Inhalt des Puffers und geben Sie ihn aus. Funktionsformat: Flush()

Beschreibung: Diese Funktion wird häufig verwendet und ist sehr effizient.



ob_get_contents

: Gibt den Inhalt des internen Puffers zurück.

Funktionsformat: string ob_get_contents(void) Beschreibung: Diese Funktion gibt den Inhalt des aktuellen Puffers zurück. Wenn der Ausgabepuffer nicht aktiviert ist, wird

ob_get_length zurückgegeben

: Gibt die Länge des internen Puffers zurück.

Funktionsformat: int ob_get_length(void) Beschreibung: Diese Funktion gibt die Länge im aktuellen Puffer wie ob_get_contents zurück; wenn der Ausgabepuffer nicht aktiviert ist, gibt sie
ob_end_clean
: Den Inhalt des internen Puffers löschen und den internen Puffer schließen

Funktionsformat: void ob_end_clean(void)

Beschreibung: Diese Funktion gibt den Inhalt des internen Puffers nicht aus, sondern löscht ihnob_end_flush: Senden Sie den Inhalt des internen Puffers an den Browser und schließen Sie den Ausgabepuffer
Funktionsformat: void ob_end_flush(void)
Beschreibung: Diese Funktion sendet den Inhalt des Ausgabepuffers (falls vorhanden). Wörter)


ob_implicit_flush
: Absolutes Flush ein- oder ausschalten

Funktionsformat: void ob_implicit_flush ([int flag])

Beschreibung: Standardmäßig wird der Puffer geschlossen, Nach dem Einschalten der absoluten Ausgabe wird jede Skriptausgabe direkt an den Browser gesendet und muss nicht mehr aufgerufen werden. Die Ausgabe erfolgt nur, wenn der Puffer voll ist. Sie können dies anhand des folgenden einfachen PHP-Beispiels überprüfen: Beispielcode:

Das obige ist der detaillierte Inhalt vonPHP: Detaillierte Erläuterung der Nutzungsunterschiede zwischen Flush() und ob_flush(), ob_end_flush(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn