Heim > Artikel > Backend-Entwicklung > Analyse der Rolle der Header-Funktion in PHP
In unserem vorherigen Artikel haben wir Ihnen die Header-Definition vorgestellt. Wenn viele Leute den Titel sehen, werden sie fragen, ob sie ihn schon einmal den Kunden vorgestellt haben Client sendet rohe HTTP-Header? Ist das wirklich so? Heute zeigen wir Ihnen, welche Funktionen die Header-Funktion in PHP hat.
Sehen Sie sich zunächst die Definition im offiziellen Dokument an
(PHP 4, PHP 5, PHP 7)
Header – Nativen HTTP-Header senden
1 void header ( string $string [, bool $replace = true [, int $http_response_code ]] )
Parameter:
Zeichenfolge
Es gibt zwei besondere Köpfe. Der erste, der mit „HTTP/“ beginnt (Groß- und Kleinschreibung spielt keine Rolle), wird zur Berechnung des zu sendenden HTTP-Statuscodes verwendet. Wenn Sie beispielsweise ein PHP-Skript auf dem Apache-Server verwenden, um Anfragen für nicht vorhandene Dateien zu verarbeiten (mithilfe der Anweisung ErrorDocument), hoffen Sie, dass das Skript mit dem antwortet korrekter Statuscode.
1 <?php 2 header("HTTP/1.0 404 Not Found"); 3 ?>
Der zweite Sonderfall sind die Header-Informationen „Location:“. Es sendet nicht nur die Nachricht an den Browser, sondern gibt auch einen REDIRECT (302)-Statuscode an den Browser zurück, es sei denn, der Statuscode wurde auf 201 oder 3xx gesetzt .
1 <?php 2 header("Location: http://www.example.com/"); /* Redirect browser */ 3 4 /* Make sure that code below does not get executed when we redirect. */ 5 exit; 6 ?>
<code class="parameter"> <span style="font-family: Microsoft YaHei">replace</span>
ersetzen
Der optionale Parameter replace
gibt an, ob der vorherige Header desselben Typs durch den späteren Header ersetzt werden soll. Standardmäßig ersetzt. Wenn Sie FALSE
übergeben, können Sie die Koexistenz derselben Header-Informationen erzwingen. Beispiel:
1 <?php 2 header('WWW-Authenticate: Negotiate'); 3 header('WWW-Authenticate: NTLM', false); 4 ?>
http_response_code
Geben Sie den Wert des HTTP zwangsweise an Antwort. Beachten Sie, dass dieser Parameter nur gültig ist, wenn die Nachricht string string
() nicht leer ist.
Die allgemeine Verwendung der Header-Funktion ist wie folgt:
1. Umleiten
header('Location: http://www.example.com/');
2. Spezifizierter Inhalt:
header('Content-type: application/pdf');
3. Anhang:
header('Content-type: application/pdf'); //指定内容为附件,指定下载显示的名字 header('Content-Disposition: attachment; filename="downloaded.pdf"'); //打开文件,并输出 readfile('original.pdf')
Der obige Code kann den Effekt eines Dateidialogfelds im Browser erzeugen
4. Ermöglichen Sie Benutzern, die neuesten Informationen und Daten abzurufen, anstatt sie zwischenzuspeichern
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // 设置临界时间
Detailliertes Beispiel
Zusammenfassung:
Nachdem ich diesen Artikel gelesen habe, glaube ich, dass Sie alle die Rolle der Header-Funktion in PHP kennen. Ich hoffe, dass sie für Ihre Arbeit hilfreich sein wird!Verwandte Empfehlungen:
Das obige ist der detaillierte Inhalt vonAnalyse der Rolle der Header-Funktion in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!