apache_response_headers

(PHP 4 >= 4.3.0, PHP 5)

apache_response_headersFetch all HTTP response headers

Description

array apache_response_headers ( void )

Fetch all HTTP response headers.

Return Values

An array of all Apache response headers on success or FALSE on failure.

Changelog

Version Description
5.5.7 This function became available in the CLI server.
5.4.0 This function became available under FastCGI. Previously, it was supported only when PHP was installed as an Apache module.
4.3.3

As of PHP 4.3.3 you can use this function with the NSAPI server module in Netscape/iPlanet/SunONE webservers, too.

Examples

Example #1 apache_response_headers() example

<?php
print_r
(apache_response_headers());
?>

The above example will output something similar to:

Array
(
    [Accept-Ranges] => bytes
    [X-Powered-By] => PHP/4.3.8
)

See Also

Коментарии

Автор:
If apache_response_headers() returns an empty array, try calling flush() before and it'll get filled.
2005-09-05 11:17:17
http://php5.kiev.ua/manual/ru/function.apache-response-headers.html
Автор:
For apache_response_headers() working good, you need to set  up output_buffering = Off in php.ini
2006-02-01 11:37:59
http://php5.kiev.ua/manual/ru/function.apache-response-headers.html
Автор:
I can confirm athlet's experience with apache_response_headers() using PHP 5.1.6. When the resulting array is empty or only contains "X-Powered-By" instead of the full list of values, you'll need to switch off output_buffering _before_ the script has been executed, for example with the following directive in .htaccess:

php_value "output_buffering" "0"

it _doesn't_ work when you do a you ini_set('output_buffering', 0); in your script. Not sure why that is so - it is not a bug in PHP, but probably has to do with how Apache populates the request values.
2007-05-24 12:46:25
http://php5.kiev.ua/manual/ru/function.apache-response-headers.html
Автор:
Addendum: The code

<pre>
<?php
  print_r
(apache_request_headers());
?>
</pre>

gives me

 Array
 (
    [X-Powered-By] => PHP/5.1.6
 )

But the code
<pre>
<?php
  ob_end_flush
();
 
print_r(apache_request_headers());
?>
</pre>

Results in

 Array
 (
    [Content-Location] => phpinfo.de.php
    [Vary] => negotiate
    [TCN] => choice
    [X-Powered-By] => PHP/5.1.6
    [Keep-Alive] => timeout=15, max=96
    [Connection] => Keep-Alive
    [Transfer-Encoding] => chunked
    [Content-Type] => text/html
    [Content-Language] => de
 )
2007-05-24 12:53:51
http://php5.kiev.ua/manual/ru/function.apache-response-headers.html
This function doesn't exist on lighttpd, so I wrote this little function to emulate it:

<?php

if (!function_exists('apache_response_headers')) {
    function 
apache_response_headers () {
       
$arh = array();
       
$headers headers_list();
        foreach (
$headers as $header) {
           
$header explode(":"$header);
           
$arh[array_shift($header)] = trim(implode(":"$header));
        }
        return 
$arh;
    }
}

?>
2009-05-28 11:57:41
http://php5.kiev.ua/manual/ru/function.apache-response-headers.html
I get  "Call to undefined function apache_response_headers()" when using php-cli so be aware of lack of this function CLI.
In my case I was trying to test my app via phpunit (command line tool of course ;)) if it sends proper headers.
2011-02-18 03:11:56
http://php5.kiev.ua/manual/ru/function.apache-response-headers.html

    Поддержать сайт на родительском проекте КГБ