PHP - 我如何获得所有标题的列表

时间:2011-05-22 20:50:18

标签: php javascript

我使用php代理绕过JS跨域问题。 我想将一些标头从客户端传递到目标服务器。

我如何收到所有标题的列表?

4 个答案:

答案 0 :(得分:1)

PHP有一个名为get_headers()的内置函数,您应该可以使用它。

答案 1 :(得分:1)

您可以致电getallheaders来访问请求标头。

答案 2 :(得分:0)

不会通过PHP做到这一点。 如果您使用apache2:http://httpd.apache.org/docs/2.2/mod/mod_proxy.html

,请查看这是否适合您

答案 3 :(得分:0)

getallheaders()和apache_request_headers()似乎无法在我的服务器上运行..我假设它是因为它只能在“FastCGI”或“当PHP作为Apache模块安装时”。 (根据http://www.php.net/manual/en/function.apache-request-headers.php

然而,jrabbit在同一页面上的评论详细说明了替代功能,这似乎对我有用:

<?php 
if (!function_exists('apache_request_headers')) { 
    eval(' 
        function apache_request_headers() { 
            foreach($_SERVER as $key=>$value) { 
                if (substr($key,0,5)=="HTTP_") { 
                    $key=str_replace(" ","-",ucwords(strtolower(str_replace("_"," ",substr($key,5))))); 
                    $out[$key]=$value; 
                } 
            } 
            return $out; 
        } 
    '); 
} 
?>

用户limalopex.eisfux.de在我未测试的同一页面上有另一个实现。