Zum Inhalt springen

PHP-Funktion headers_sent(): Alles, was Sie wissen müssen

Als PHP-Entwickler müssen Sie möglicherweise prüfen, ob HTTP-Header bereits an den Client gesendet wurden. Die Funktion headers_sent() ist eine integrierte PHP-Funktion, mit der Sie überprüfen können, ob Header gesendet wurden. In diesem Artikel werfen wir einen detaillierten Blick auf die Funktion headers_sent() und ihre Anwendung.

Was ist die Funktion headers_sent()?

Die Funktion headers_sent() ist eine integrierte PHP-Funktion, mit der Sie überprüfen können, ob Header an den Client gesendet wurden.

So verwenden Sie die Funktion headers_sent()

Die Verwendung der Funktion headers_sent() ist unkompliziert. Hier ist die Syntax der Funktion:

Die PHP-Syntax der Funktion headers_sent()

php
headers_sent($file, $line);

Die Funktion nimmt zwei optionale Parameter entgegen, die als Referenz übergeben werden müssen:

  • $file: Eine Variable, der der Name der Datei zugewiesen wird, in der die Header gesendet wurden.
  • $line: Eine Variable, der die Zeilennummer zugewiesen wird, in der die Header gesendet wurden.

Hier ist ein Beispiel dafür, wie Sie die Funktion headers_sent() verwenden können, um zu prüfen, ob Header gesendet wurden:

So verwenden Sie die Funktion headers_sent()

php
<?php

if (headers_sent($file, $line)) {
    echo "Headers already sent in $file on line $line";
}

In diesem Beispiel übergeben wir $file und $line als Referenz an die Funktion. Wenn Header bereits gesendet wurden, wird die Bedingung als wahr ausgewertet, und wir zeigen eine Nachricht an, die die Datei und die Zeilennummer angibt, an der die Ausgabe begann.

Header werden normalerweise vorzeitig gesendet, da Leerzeichen oder Zeilenumbrüche vor dem öffnenden <?php-Tag, versehentliche Ausgabeanweisungen oder Ausgaben aus eingebundenen Dateien vorhanden sind. Wenn Sie Header nach Beginn der Ausgabe senden müssen, sollten Sie die Verwendung von Pufferungsfunktionen wie ob_start() in Betracht ziehen, um die Antwort zu verzögern, bis der Puffer geleert wird.

Fazit

Die Funktion headers_sent() ist ein nützliches Werkzeug, um zu überprüfen, ob Header an den Client in Ihrer PHP-Webanwendung gesendet wurden. Durch das Verständnis der Syntax und Verwendung der Funktion können Sie leicht prüfen, ob Header gesendet wurden, und bei Bedarf entsprechende Maßnahmen ergreifen. Wir hoffen, dass dieser Artikel informativ und hilfreich beim Verständnis der Funktion headers_sent() in PHP war.

Praxis

Was kann die Warnung 'headers already sent' in PHP verursachen?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.