$http_response_header — HTTP 响应头
$http_response_header 数组与 get_headers() 函数类似。当使用HTTP 包装器时,$http_response_header 将会被 HTTP 响应头信息填充。$http_response_header 将被创建于局部作用域中。
Example #1 $http_response_header 范例
<?php
function get_contents() {
file_get_contents("http://example.com");
var_dump($http_response_header);
}
get_contents();
var_dump($http_response_header);
?>
以上例程的输出类似于:
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" } NULL
miloshio at gmail dot com (2013-01-29 11:17:21)
This may be a slightly better way to catch all from http protocol:
<?php
function return_http($stringUrl, $header=true){
//brief check if it's right format
if(substr($stringUrl, 0, 7) !== 'http://' && substr($stringUrl, 0, 8) !== 'https://')
return die('Argument passed in function should be URL string starting with http:// or https://, other given');
//if $header is left to be true, we'll return array with headers and content
if($header){
return array('content'=>file_get_contents($stringUrl), 'header'=>$http_response_header);
} else return file_get_contents($stringUrl); // if not we'll get string with content
}
?>