Network 函数
在线手册:中文  英文

headers_list

(PHP 5)

headers_listReturns a list of response headers sent (or ready to send)

说明

array headers_list ( void )

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() will add a response header on its own */
setcookie('foo''bar');

/* Define a custom response header
   This will be ignored by most clients */
header("X-Sample-Test: foo");

/* Specify plain text content in our response */
header('Content-type: text/plain');

/* What headers are going to be sent? */
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支持时得到处理和输出。

参见


Network 函数
在线手册:中文  英文

用户评论:

Anonymous (2012-10-11 12:50:41)

note that it does not return the status header

<?php

header
('HTTP/1.1 301 Moved Permanently'true301);

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
)

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;
}

?>

易百教程