欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

带超时的getHeader函数

程序员文章站 2022-05-07 09:20:16
...
跳至 [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;
    }