headers_list

(PHP 5, PHP 7)

headers_listGönderilmiş (veya gönderilmeye hazır) yanıt başlıklarının listesiyle döner

Açıklama

array headers_list ( void )

headers_list() işlevi, tarayıcıya veya istemciye gönderilen başlıkların listesini döndürür. Bu başlıkların henüz gönderilip gönderilmediğini headers_sent() işleviyle öğrenebilirsiniz.

Dönen Değerler

Başlıkları içeren sayısal indisli bir dizi döndürür.

Örnekler

Örnek 1 - headers_list() kullanım örneği

<?php

/* setcookie() kendisi için bir yanıt başlığı ekler */
setcookie('foo''bar');

/* Özel bir yanıt başlığı tanımlayalım.
   Bunu çoğu istemci yok sayar. */
header("X-Sample-Test: foo");

/* Yanıtımız salt metin içerdiğini belirtelim */
header('Content-type: text/plain');

/* Hangi başlıklar gönderiliyor? */
var_dump(headers_list());

?>

Yukarıdaki örneğin çıktısı:

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

Ayrıca Bakınız

add a note add a note

User Contributed Notes 3 notes

up
14
Anonymous
4 years ago
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
)
up
2
SOLO2
4 years 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;
}

?>
up
1
arnold at jasny dot net
2 months ago
This function won't work for when you're running PHP from the command line. If will always return an empty array. This can be an issue when testing your project using PHPUnit or Codeception.

To solve this, install the xdebug extension and use `xdebug_get_headers` when on the cli.

<?php
$headers
= php_sapi_name() === 'cli' ? xdebug_get_headers() : headers_list();
?>
To Top