getallheaders

(PHP 4, PHP 5)

getallheadersObtem 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.

Veja Também

add a note add a note

User Contributed Notes 4 notes

up
7
joyview at gmail dot com
5 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;
    }
}
?>
up
1
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
up
1
lorro at lorro dot hu
9 years ago
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.
up
0
majksner at gmail dot com
3 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;
        }
}
?>
To Top