headers_sent

(PHP 4, PHP 5, PHP 7, PHP 8)

headers_sentPrüft, ob oder wo die Header bereits gesendet wurden

Beschreibung

headers_sent(string&$filename = null, int&$line = null): bool

Prüft, ob oder wo die Header bereits gesendet wurden.

Sobald der Header-Block gesendet wurde, können Sie keine weiteren Header-Zeilen mit der Funktion header() hinzufügen. Mittels dieser Funktion können Sie aber zumindest Fehlermeldungen bezüglich der HTTP-Header vermeiden. Eine andere Möglichkeit ist die Verwendung von Ausgabepufferung.

Parameter-Liste

filename

Sind die optionalen Parameter filename und line angegeben, schreibt headers_sent() den PHP-Dateinamen und die Zeilennummer, an denen die Ausgabe begann, in die Variablen filename und line.

Hinweis:

Wenn die Ausgabe gestartet wurde, bevor die PHP-Quelldatei ausgeführt wird (z. B. aufgrund eines Fehlers beim Start), wird der Parameter filename auf die leere Zeichenkette gesetzt.

line

Die Zeilennummer, an der die Ausgabe begann.

Rückgabewerte

headers_sent() gibt false zurück, wenn noch keine HTTP-Header gesendet wurden, ansonsten true.

Beispiele

Beispiel #1 Beispiel zur Verwendung von headers_sent()

<?php

// Wenn keine Header gesendet wurden, sende einen
if (!headers_sent()) {
header ('Location: http://www.example.com/');
exit;
}

// Ein Beispiel für den Einsatz der optionalen Parameter filename und
// line. Beachten Sie, dass $filename und $linenum für einen späteren
// Einsatz übergeben werden. Weisen Sie ihnen davor keine Werte zu.
if (!headers_sent($filename, $linenum)) {
header ('Location: http://www.example.com/');
exit;

// Wahrscheinlich wollen Sie hier eine Fehlermeldung auslösen
} else {

echo
"Header bereits gesendet in $filename in Zeile $linenum\n" .
"Redirect nicht moeglich, klicken Sie daher statt dessen <a " .
"href=\"http://www.example.com\">diesen Link</a> an\n";
exit;
}

?>

Anmerkungen

Hinweis:

Header sind nur dann zugänglich und werden nur dann gesendet, wenn die genutzte SAPI sie unterstützt.

Siehe auch

  • ob_start() - Ausgabepufferung aktivieren
  • trigger_error() - Erzeugt eine benutzerdefinierte Fehlermeldung/Warnung/Benachrichtigung
  • headers_list() - Liefert eine Liste der gesendeten (oder zum Senden vorbereiteten) Antwort-Header
  • header() - Sendet einen HTTP-Header in Rohform für eine detailliertere Darlegung der relevanten Konzepte.
To Top