温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何获php取请求url时响应的报头信息

发布时间:2020-08-03 16:05:34 来源:亿速云 阅读:234 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关如何获php取请求url时响应的报头信息,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

php获取请求url时响应的报头信息的方法:1、取url的时候,创建名为【$http_response_header】的变量来保存http响应的报头;2、使用fopen打开数据流信息,用【stream_get_meta_data】获取。

php获取请求url时响应的报头信息的方法:

1、用file_get_contents或者fopenfilereadfile等函数读取url的时候,会创建一个名 为$http_response_header的变量来保存http响应的报头.

示例代码一:

<?php 
       $url = 'http://www.baidu.com'; 
       $html = file_get_contents($url); 
       print_r($http_response_header); 
    //输出结果 
       Array( 
            [0] => HTTP/1.1 200 OK 
            [1] => Date: Tue, 06 Nov 2012 08:51:01 GMT 
            [2] => Server: BWS/1.0 
            [3] => Content-Length: 9803 
            [4] => Content-Type: text/html;charset=gbk 
            [5] => Cache-Control: private 
            [6] => Expires: Tue, 06 Nov 2012 08:51:01 GMT 
            [7] => Set-Cookie: BAIDUID=6635735B51B28640F425F802C49340F2:FG=1;  
            expires=Tue, 06-Nov-42 08:51:01 GMT; path=/; domain=.baidu.com 
            [8] => P3P: CP=" OTI DSP COR IVA OUR IND COM " 
            [9] => Connection: Close 
      )       
  ?>

2、使用fopen等函数打开的数据流信息可以用 stream_get_meta_data来获取。

示例代码二:

   <?php 
     $fp = fopen($url, 'r'); 
     print_r(stream_get_meta_data($fp)); 
     fclose($fp); 
//输出结果 
Array 
( 
    [wrapper_data] => Array 
        ( 
            [0] => HTTP/1.1 200 OK 
            [1] => Date: Tue, 06 Nov 2012 08:54:22 GMT 
            [2] => Server: BWS/1.0 
            [3] => Content-Length: 9803 
            [4] => Content-Type: text/html;charset=gbk 
            [5] => Cache-Control: private 
            [6] => Expires: Tue, 06 Nov 2012 08:54:22 GMT 
            [7] => Set-Cookie: BAIDUID=347578BCBD709F27925BDD8B05364A73:FG=1; 
             expires=Tue, 06-Nov-42 08:54:22 GMT; path=/; domain=.baidu.com 
            [8] => P3P: CP=" OTI DSP COR IVA OUR IND COM " 
            [9] => Connection: Close 
        ) 
   
    [wrapper_type] => http 
    [stream_type] => tcp_socket 
    [mode] => r 
    [unread_bytes] => 0 
    [seekable] =>  
    [uri] => http://www.baidu.com 
    [timed_out] =>  
    [blocked] => 1 
    [eof] =>  
) 
?>

3、get_headers()也可以获取请求url的响应报文。

示例代码三:

<?php 
print_r(get_headers($url)); 
Array 
( 
    [0] => HTTP/1.1 200 OK 
    [1] => Date: Tue, 06 Nov 2012 08:58:41 GMT 
    [2] => Server: BWS/1.0 
    [3] => Content-Length: 9803 
    [4] => Content-Type: text/html;charset=gbk 
    [5] => Cache-Control: private 
    [6] => Expires: Tue, 06 Nov 2012 08:58:41 GMT 
    [7] => Set-Cookie: BAIDUID=87B6F26EEC74F2B8F7FABA934DC6BB24:FG=1;  
    expires=Tue, 06-Nov-42 08:58:41 GMT; path=/; domain=.baidu.com 
    [8] => P3P: CP=" OTI DSP COR IVA OUR IND COM " 
    [9] => Connection: Close 
) 
?>


关于如何获php取请求url时响应的报头信息就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI