note that it does not return the status header
<?php
header('HTTP/1.1 301 Moved Permanently', true, 301);
header('foo: bar');
header('a: b');
header('colon less example');
print_r(headers_list());
?>
Array
(
[0] => X-Powered-By: PHP/5.4.7
[1] => foo: bar
[2] => a: b
)
headers_list
(PHP 5)
headers_list — Gibt eine Liste der gesendeten (oder zum Senden vorbereiteten) Response Header zurück
Beschreibung
array headers_list
( void
)
headers_list() gibt ein Array der Header zurück, die zum Browser/Client gesendet werden. Um festzustellen, ob diese Header bereits gesendet worden sind, verwenden Sie headers_sent().
Rückgabewerte
Gibt ein numerisch indeziertes Array der Header zurück.
Beispiele
Beispiel #1 Beispiele zur Verwendung von headers_list()
<?php
/* setcookie() fügt für sich einen eigenen Response Header ein */
setcookie('foo', 'bar');
/* Einen eigenen Response Header definieren
Dieser wird von den meisten Clients ignoriert */
header("X-Sample-Test: foo");
/* Specify plain text content in our response */
header('Content-type: text/plain');
/* Welche Header wurden gesendet? */
var_dump(headers_list());
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(4) {
[0]=>
string(23) "X-Powered-By: PHP/5.1.3"
[1]=>
string(19) "Set-Cookie: foo=bar"
[2]=>
string(18) "X-Sample-Test: foo"
[3]=>
string(24) "Content-type: text/plain"
}
Anmerkungen
Hinweis:
Header sind nur dann zugänglich und werden nur dann gesendet, wenn die genutzte SAPI sie unterstützt.
Siehe auch
- headers_sent() - Prüft, ob oder wo die Header bereits gesendet wurden
- header() - Sendet einen HTTP-Header in Rohform
- setcookie() - Sendet ein Cookie
- apache_response_headers() - Liefert alle HTTP-Responseheader
Anonymous ¶
8 months ago
SOLO2 ¶
11 months ago
Function to check if a particular header has been added to the list:
<?php
function header_sent($header) {
$headers = headers_list();
$header = trim($header,': ');
$result = false;
foreach ($headers as $hdr) {
if (stripos($hdr, $header) !== false) {
$result = true;
}
}
return $result;
}
?>
