>php教程 >PHP源码 >带超时的getHeader函数

带超时的getHeader函数

WBOY
WBOY원래의
2016-06-16 08:39:341776검색
跳至 [1] [2] [全屏预览]
    function getHeaders($url,$timeout=2)
    {
        $ch=curl_init();
        curl_setopt($ch,CURLOPT_URL,$url);
        curl_setopt($ch,CURLOPT_HEADER,true);
        curl_setopt($ch,CURLOPT_NOBODY,true);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
        curl_setopt($ch,CURLOPT_TIMEOUT,$timeout);
        $data=curl_exec($ch);
        curl_close($ch);
        if(empty($data)) return false;
        $headers=explode("\n",$data);
        foreach ($headers as $key=>$headerLine){
            if(strlen($headerLine)>1){
                if(strpos($headerLine,':')!==false) $headers[stristr($headerLine,':',true)]=trim(stristr($headerLine,':'),': ');
            }else{
                unset($headers[$key]);
            }
        }
        return  $headers;
    }

2. [代码]返回值     跳至 [1] [2] [全屏预览]

Array
(
    [0] => HTTP/1.1 200 OK
    [1] => Server: NWS_UGC_HY
    [2] => Connection: keep-alive
    [3] => Date: Tue, 14 Jun 2016 13:27:28 GMT
    [4] => Cache-Control: max-age=600
    [5] => Expires: Tue, 14 Jun 2016 13:37:28 GMT
    [6] => Last-Modified: Sun, 03 Aug 2014 22:52:31 GMT
    [7] => Content-Type: application/octet-stream
    [8] => Content-Length: 102752
    [9] => X-Cache-Lookup: Hit From Disktank
    [Server] => NWS_UGC_HY
    [Connection] => keep-alive
    [Date] => Tue, 14 Jun 2016 13:27:28 GMT
    [Cache-Control] => max-age=600
    [Expires] => Tue, 14 Jun 2016 13:37:28 GMT
    [Last-Modified] => Sun, 03 Aug 2014 22:52:31 GMT
    [Content-Type] => application/octet-stream
    [Content-Length] => 102752
    [X-Cache-Lookup] => Hit From Disktank
)
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.