©
本文档使用 PHP中文网手册 发布
(PHP 5)
headers_list — Returns a list of response headers sent (or ready to send)
headers_list() will return a list of headers to be sent to the browser / client. To determine whether or not these headers have been sent yet, use headers_sent() .
Returns a numerically indexed array of headers.
Example #1 Examples using headers_list()
<?php
setcookie ( 'foo' , 'bar' );
header ( "X-Sample-Test: foo" );
header ( 'Content-type: text/plain' );
var_dump ( headers_list ());
?>
以上例程会输出:
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" }
Note:
数据头只会在SAPI支持时得到处理和输出。
[#1] Anonymous [2012-10-11 12:50:41]
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
)
[#2] SOLO2 [2012-07-13 16:00:02]
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;
}
?>