$http_response_header

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

$http_response_headerHTTP yanıt başlıkları

Açıklama

$http_response_header dizisi get_headers() işlevi gibidir. HTTP sarmalayıcı kullanılırken, $http_response_header HTTP yanıt başlıklarından oluşturulur. $http_response_header yerel etki alanında oluşturulur.

Örnekler

Örnek 1 - $http_response_header örneği

<?php
function get_contents() {
file_get_contents("http://example.com");
var_dump($http_response_header); // değişken yerel etki alanında değerlendirilir
}
// get_contents() çağrısı değişkeni işlev etki alanının dışında değerlendirmez
get_contents();
var_dump($http_response_header);
?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

array(9) {
  [0]=>
  string(15) "HTTP/1.1 200 OK"
  [1]=>
  string(35) "Date: Sat, 12 Apr 2008 17:30:38 GMT"
  [2]=>
  string(29) "Server: Apache/2.2.3 (CentOS)"
  [3]=>
  string(44) "Last-Modified: Tue, 15 Nov 2005 13:24:10 GMT"
  [4]=>
  string(27) "ETag: "280100-1b6-80bfd280""
  [5]=>
  string(20) "Accept-Ranges: bytes"
  [6]=>
  string(19) "Content-Length: 438"
  [7]=>
  string(17) "Connection: close"
  [8]=>
  string(38) "Content-Type: text/html; charset=UTF-8"
}

Warning: Undefined variable $http_response_header
NULL

add a note

User Contributed Notes 2 notes

up
57
nicolas at toniazzi dot net
11 years ago
Note that the HTTP wrapper has a hard limit of 1024 characters for the header lines.Any HTTP header received that is longer than this will be ignored and won't appear in $http_response_header.The cURL extension doesn't have this limit.http_fopen_wrapper.c: #define HTTP_HEADER_BLOCK_SIZE 1024
up
40
MangaII
10 years ago
parser function to get formatted headers (with response code)<?phpfunction parseHeaders( $headers ){    $head = array();    foreach( $headers as $k=>$v )    {        $t = explode( ':', $v, 2 );        if( isset( $t[1] ) )            $head[ trim($t[0]) ] = trim( $t[1] );        else        {            $head[] = $v;            if( preg_match( "#HTTP/[0-9\.]+\s+([0-9]+)#",$v, $out ) )                $head['reponse_code'] = intval($out[1]);        }    }    return $head;}print_r(parseHeaders($http_response_header));/*Array(    [0] => HTTP/1.1 200 OK    [reponse_code] => 200    [Date] => Fri, 01 May 2015 12:56:09 GMT    [Server] => Apache    [X-Powered-By] => PHP/5.3.3-7+squeeze18    [Set-Cookie] => PHPSESSID=ng25jekmlipl1smfscq7copdl3; path=/    [Expires] => Thu, 19 Nov 1981 08:52:00 GMT    [Cache-Control] => no-store, no-cache, must-revalidate, post-check=0, pre-check=0    [Pragma] => no-cache    [Vary] => Accept-Encoding    [Content-Length] => 872    [Connection] => close    [Content-Type] => text/html)*/?>
To Top