curl的另外一种简便写法


第一种curl封装的写法  get  post

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_PORT           => "8080",
    CURLOPT_URL            => "http://121.42.185.57:8080/xservice/safes/5ccf7fc0f2f4/warning",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING       => "",
    CURLOPT_MAXREDIRS      => 10,
    CURLOPT_TIMEOUT        => 30,
    CURLOPT_HTTP_VERSION   => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST  => "POST",
    CURLOPT_POSTFIELDS     => "warningType=4&token=8848&=",
    CURLOPT_HTTPHEADER     => array(
        "cache-control: no-cache",
        "content-type: application/x-www-form-urlencoded",
        "postman-token: 869ab6f8-3779-d0e9-a4f5-11e502be18fc"
    ),
));

$response = curl_exec($curl);
$err      = curl_error($curl);

curl_close($curl);

if($err){
    echo "cURL Error #:" . $err;
}else{
    echo $response;
}
 

第二种封装的写法  get  post 


/*phpcurl方法 qhyj_edit*/
function kickhttp($url, $params, $method = 'GET', $header = array(), $multi = false,$gzip = false){
   $opts = array(
         CURLOPT_TIMEOUT        => 1200,
         CURLOPT_RETURNTRANSFER => 1,
         CURLOPT_SSL_VERIFYPEER => false,
         CURLOPT_SSL_VERIFYHOST => false,
         CURLOPT_HTTPHEADER     => $header
   );
   /* 根据请求类型设置特定参数 */
   switch(strtoupper($method)){
      case 'GET':
         $opts[CURLOPT_URL] = $url . '?' . http_build_query($params);
         break;
      case 'POST':
         //判断是否传输文件
         $params = $multi ? $params : http_build_query($params);
         $opts[CURLOPT_URL] = $url;
         $opts[CURLOPT_POST] = 1;
         $opts[CURLOPT_POSTFIELDS] = $params;
         break;
      default:
         $this->error('不支持的请求方式!');
   }
   // var_dump($opts);
   /* 初始化并执行curl请求 */
   $ch = curl_init();
   if($gzip == true){
      curl_setopt($ch,CURLOPT_ENCODING,'gzip');
   }
   curl_setopt_array($ch, $opts);
   $data  = curl_exec($ch);
   $error = curl_error($ch);
   curl_close($ch);
   if($error) $this->error('请求发生错误:' . $error);
   return  $data;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值