yangzailu

导航

httpCurl封装

/**
 * @param http请求接口封装
 * @author  yangzl 
 * @date(20180612)
 */
public  function httpCurl($url,$data,$method = 'POST',$HTTPHEADER='x-www-form-urlencoded'){
     $defaults = array(
            CURLOPT_HEADER             => 0,  //输出返回头信息 false 关闭
            CURLOPT_HTTPHEADER        => array("content-type: application/{$HTTPHEADER};charset=UTF-8"), //header头信息
            CURLOPT_RETURNTRANSFER     => 1, //如果成功只将结果返回,不自动输出任何内容。
            CURLOPT_TIMEOUT         => 60, //设置超时,从服务器接收缓冲完成前需要等待多长时间
            CURLOPT_CONNECTTIMEOUT    => 30,//在成功连接服务器前等待多久
            CURLOPT_SSL_VERIFYPEER  => 0,//部分链接url要以https协议进行,设定以跳过证书验证
            CURLOPT_SSL_VERIFYHOST  => 0, //从证书中检查SSL加密算法是否存在
        );

        if($method == 'POST'){
            $defaults[CURLOPT_POST]         = 1; //true时发送post请求;
            $defaults[CURLOPT_POSTFIELDS]     = is_array($data)?http_build_query($data):$data;
            $defaults[CURLOPT_URL]             = $url;
        }else{
            $defaults[CURLOPT_URL]             = $url.'?'.http_build_query($data);
        }

        $ch = curl_init();//初始化curl
        curl_setopt_array($ch, $defaults);
        $result = curl_exec($ch); //执行curl请求
        if(curl_errno($ch)){
            return curl_error($ch);
        }
           curl_close($ch);
        return $result;
}

 

posted on 2018-06-21 14:23  飞离地平线  阅读(32)  评论(0编辑  收藏  举报