Heim >Backend-Entwicklung >PHP-Tutorial >Steuerung des PHP-Ausgabepuffers

Steuerung des PHP-Ausgabepuffers

伊谢尔伦
伊谢尔伦Original
2016-11-22 09:51:271078Durchsuche

Einführung

Wenn das PHP-Skript eine Ausgabe hat, kann die Ausgabesteuerungsfunktion diese verwenden, um die Ausgabe zu steuern. Dies ist in verschiedenen Situationen nützlich, insbesondere beim Senden von HTTP-Headern an den Browser, nachdem das Skript mit der Datenausgabe begonnen hat. Die Ausgabekontrollfunktion hat keinen Einfluss auf die von header() oder setcookie() gesendeten Datei-Header-Informationen, sondern nur auf die Daten zwischen Funktionen wie echo und PHP-Codeblöcken.

Hinweis:

Aufgrund von Fehlern in früheren Versionen müssen Sie beim Upgrade von PHP4.1.x (4.2.x, 4.3.x) sicherstellen, dass implicit_flush in php.ini AUS ist , andernfalls wird jede Ausgabe, die ob_start() verwendet, in der Ausgabe ausgeblendet.

Grundlegende Verwendung

<?php
    ob_start();
    echo "Hello\n";
    setcookie("cookiename", "cookiedata");
    ob_end_flush();
?>

Im obigen Beispiel wird die Ausgabe der Echo-Funktion im Ausgabepuffer gespeichert, bis ob_end_flush() aufgerufen wird. Gleichzeitig speichert der Aufruf von setcookie() auch erfolgreich ein Cookie, ohne einen Fehler zu verursachen. (Unter normalen Umständen können die http-Header-Informationen nach dem Senden der Daten an den Browser nicht mehr gesendet werden.)

Ausgabesteuerungsfunktion

flush – aktualisiert den Ausgabepuffer

ob_clean – Den Ausgabepuffer löschen (löschen)

ob_end_clean – Den Puffer löschen (löschen) und den Ausgabepuffer schließen

ob_end_flush – Den Inhalt des Ausgabepuffers leeren (aussenden) und schließen der Puffer

ob_flush – den Inhalt des Ausgabepuffers ausspülen (senden)

ob_get_clean – den Inhalt des aktuellen Puffers abrufen und den aktuellen Ausgabepuffer löschen.

ob_get_contents – Gibt den Inhalt des Ausgabepuffers zurück

ob_get_flush – Leert (sendet) den Pufferinhalt, gibt den Inhalt als Zeichenfolge zurück und schließt den Ausgabepuffer.

ob_get_length – Gibt die Länge des Ausgabepufferinhalts zurück

ob_get_level – Gibt die Verschachtelungsebene des Ausgabepuffermechanismus zurück

ob_get_status – Ruft den Status aller Ausgabepuffer ab

ob_gzhandler – Die Rückruffunktion, die in ob_start verwendet wird, um den Inhalt des Ausgabepuffers zu komprimieren.

ob_implicit_flush – Absolutes Flushing ein-/ausschalten

ob_list_handlers – Alle verwendeten Ausgabehandler auflisten.

ob_start – Öffnen Sie den Ausgabesteuerungspuffer

output_add_rewrite_var – URL-Rewriter-Werte hinzufügen (URL-Rewriter-Werte hinzufügen)

output_reset_rewrite_vars – Setzen Sie die URL-Rewriter-Werte zurück ( Zurücksetzen URL-Rewriter-Werte)


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