# 4.10.3 Erzeugen von HTTP-Headern mit header()

header() beschreibt das "Grundmodell" eines HTTP-Headers. Dabei muss die Ausgabe der Zeilen für den HTTP-Header natürlich VOR der sonstigen HTML-Ausgabe erfolgen.

Hier wird ein Header erzeugt, der das Caching beeinflusst.

    1
    2
    3
    4
    <?php
    header("Expires: Sun, 28 May 2000 10:00:00 GMT");
    header("Last-Modified: " . date("D, d M Y H:i:s") . "GMT");
    header("Pragma: no-cache");

Häufig verwendete Header-Funktionalitäten sind Location, um einen Redirect zu erzeugen, oder Content-Type, um den Zeichensatz festzulegen.

    1
    2
    3
    <?php
    header("Location: http://www.medieninformatik-emden.de");
    header("Content-Type: text/html; charset=utf-8");

Weitere HTTP-Headerinformationen können hier nachgelesen werden: HTTP/1.1 Spezifikation

Beachten Sie bitte, dass einige Header beim Client zwischengespeichert werden können, es aber nicht müssen. Zum Beispiel speichern einige Browser den Statuscode 301 zwischen, viele tun dies jedoch nicht. Berücksichtigen Sie das bei der Programmierung, ersparen Sie sich viel Zeit bei der Suche nach dem Fehler.