0
点赞
收藏
分享

微信扫一扫

php curl请求服务器响应慢

CURL速度慢可能与Expect:100-Continue有关,可以修改下代码试验一下:

$header = is_array($header) ? array_merge($header,['Expect:',]) : ['Expect:'];

//curl网址
function curl($url,$header){
        $header = is_array($header) ? array_merge($header,['Expect:',]) : ['Expect:'];
    $ch  =  curl_init ();
    curl_setopt($ch,CURLOPT_TIMEOUT,60);        //最长秒数
    curl_setopt($ch, CURLOPT_URL, $url);        //访问的url
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);        //禁用后cURL将终止从服务端进行验证。   
    curl_setopt($ch, CURLOPT_HEADER, FALSE);        //启用时会将头文件的信息作为数据流输出。
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);   //将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。 
        if ($header !== null) {
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    }
    $res = curl_exec ($ch);
    curl_close ($ch);
    return $res;
}

//curl网址 数据
function postCurl($url,$data,$header = null){
        $header = is_array($header) ? array_merge($header,['Expect:',]) : ['Expect:'];
    $ch = curl_init ();
    curl_setopt($ch,CURLOPT_TIMEOUT,60);        //最长秒数
    curl_setopt($ch, CURLOPT_URL, $url);        //访问的url
    curl_setopt($ch, CURLOPT_POST, 1 );     //启用时会发送一个常规的POST请求
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);        //禁用后cURL将终止从服务端进行验证。   
    curl_setopt($ch, CURLOPT_HEADER, FALSE);        //启用时会将头文件的信息作为数据流输出。
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);   //将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。 
    if ($header !== null) {
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    }

    //php7.0 curl post文件需要用CURLFile类
    if (is_array($data)) {
        foreach ($data as $key => $value) {
            if (!is_array($value) && strpos($value,'@') !== FALSE) {
                $file=str_replace('@', '',$value);
                $data[$key]=curl_file_create(str_replace('@', '',$value));
            }
        }
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
    } else {
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    }
    $res = curl_exec ( $ch );
    curl_close ($ch);
    return $res;
}
举报

相关推荐

0 条评论