PHP 5.6.0 released

getallheaders

(PHP 4, PHP 5)

getallheadersTüm HTTP istek başlıklarını getirir

Açıklama

array getallheaders ( void )

Mevcut isteğe ait HTTP başlıklarının tümünü bir dizi olarak döndürür.

Bu işlev apache_request_headers() işlevine bir takma addır. Bu işleven nasıl çalıştığı hakkında ayrıntılı bilgi edinmek için apache_request_headers() işlevinin açıklamasına bakınız.

Bu işlev sadece PHP bir Apache modülü olarak kuruluysa desteklenir.

Dönen Değerler

Herşey yolunda gitmişse mevcut isteğe ait tüm HTTP başlıklarını içeren bir ilişkili dizi döndürür, aksi takdirde FALSE döndürür.

Sürüm Bilgisi

Sürüm: Açıklama
4.3.0 apache_request_headers() işlevine bir takma ad haline geldi. Aslında sadece adı değiştirildi. Bunu nedeni işlevin sadece Apache altında çalışmasıdır.

Örnekler

Örnek 1 - getallheaders() örneği

<?php

foreach (getallheaders() as $başlık => $değer) {
    echo 
"$başlık$değer\n";
}

?>

Notlar

PHP 4.3.3'ten itibaren bu işlevi, NSAPI sunucu modülü ile Netscape/iPlanet/SunONE sunucularında da kullanabilirsiniz.

Ayrıca Bakınız

add a note add a note

User Contributed Notes 4 notes

up
7
joyview at gmail dot com
6 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
3 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