Beware that RFC2616 (HTTP/1.1) defines header fields as case-insensitive entities. Therefore, array keys of getallheaders() should be converted first to lower- or uppercase and processed such.
getallheaders
(PHP 4, PHP 5)
getallheaders — Obtem todos os headers HTTP
Descrição
array getallheaders
( void
)
Obtém todos cabeçalhos HTTP da atual requisição.
Esta função é um sinônimo para apache_request_headers(). Ela retorna um array associativo de todos os headers HTTP da requisição atual. Veja a documentação de apache_request_headers() para mais detalhes do funcionamento dessa função.
This function is only supported when PHP is installed as an Apache module.
Valor Retornado
Um array associativo de todos cabeçalhos HTTP da requisição atual, ou
FALSE em falha.
Changelog
| Versão | Descrição |
|---|---|
| 4.3.0 | Tornou-se um apelido de apache_request_headers(). Essencialmente, ela foi renomeada. Isto porque a função somente funciona com Apache. |
Exemplos
Exemplo #1 Exemplo da getallheadres()
<?php
foreach (getallheaders() as $name => $value) {
echo "$name: $value\n";
}
?>
Notas
As of PHP 4.3.3 you can use this function with the NSAPI server module in Netscape/iPlanet/SunONE webservers, too.
lorro at lorro dot hu ¶
8 years ago
joyview at gmail dot com ¶
4 years ago
it could be useful if you using nginx instead of apache
<?php
if (!function_exists('getallheaders'))
{
function getallheaders()
{
$headers = '';
foreach ($_SERVER as $name => $value)
{
if (substr($name, 0, 5) == 'HTTP_')
{
$headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value;
}
}
return $headers;
}
}
?>
acidfilez at gmail dot com ¶
2 years ago
dont forget to add the content_type and content_lenght if your are uploading file:
<?php
function emu_getallheaders() {
foreach ($_SERVER as $name => $value)
{
if (substr($name, 0, 5) == 'HTTP_')
{
$name = str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))));
$headers[$name] = $value;
} else if ($name == "CONTENT_TYPE") {
$headers["Content-Type"] = $value;
} else if ($name == "CONTENT_LENGTH") {
$headers["Content-Length"] = $value;
}
}
return $headers;
}
?>
chears magno c. heck
majksner at gmail dot com ¶
2 years ago
apache_request_headers replicement for nginx
<?php
if (!function_exists('apache_request_headers')) {
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;
}else{
$out[$key]=$value;
}
}
return $out;
}
}
?>
