银河源码

高品质源码点击这里给我发消息PHP-LotusAdmin官方论坛

CURL的get和post请求(自认为完美,mark下)

/**
  * Curl send get request, support HTTPS protocol
  * @param string $url The request url
  * @param string $refer The request refer
  * @param int $timeout The timeout seconds
  * @return mixed
  */
 function getRequest($url, $refer = "", $timeout = 10)
 {
     $ssl = stripos($url,'https://') === 0 ? true : false;
     $curlObj = curl_init();
     $options = [
         CURLOPT_URL => $url,
         CURLOPT_RETURNTRANSFER => 1,
         CURLOPT_FOLLOWLOCATION => 1,
         CURLOPT_AUTOREFERER => 1,
         CURLOPT_USERAGENT => 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)',
         CURLOPT_TIMEOUT => $timeout,
         CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_0,
         CURLOPT_HTTPHEADER => ['Expect:'],
         CURLOPT_IPRESOLVE => CURL_IPRESOLVE_V4,
     ];
     if ($refer) {
         $options[CURLOPT_REFERER] = $refer;
     }
     if ($ssl) {
         //support https
         $options[CURLOPT_SSL_VERIFYHOST] = false;
         $options[CURLOPT_SSL_VERIFYPEER] = false;
     }
     curl_setopt_array($curlObj, $options);
     $returnData = curl_exec($curlObj);
     if (curl_errno($curlObj)) {
         //error message
         $returnData = curl_error($curlObj);
     }
     curl_close($curlObj);
     return $returnData;
 }

 /**
  * Curl send post request, support HTTPS protocol
  * @param string $url The request url
  * @param array $data The post data
  * @param string $refer The request refer
  * @param int $timeout The timeout seconds
  * @param array $header The other request header
  * @return mixed
  */
 function postRequest($url, $data, $refer = "", $timeout = 10, $header = [])
 {
     $curlObj = curl_init();
     $ssl = stripos($url,'https://') === 0 ? true : false;
     $options = [
         CURLOPT_URL => $url,
         CURLOPT_RETURNTRANSFER => 1,
         CURLOPT_POST => 1,
         CURLOPT_POSTFIELDS => $data,
         CURLOPT_FOLLOWLOCATION => 1,
         CURLOPT_AUTOREFERER => 1,
         CURLOPT_USERAGENT => 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)',
         CURLOPT_TIMEOUT => $timeout,
         CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_0,
         CURLOPT_HTTPHEADER => ['Expect:'],
         CURLOPT_IPRESOLVE => CURL_IPRESOLVE_V4,
         CURLOPT_REFERER => $refer
     ];
     if (!empty($header)) {
         $options[CURLOPT_HTTPHEADER] = $header;
     }
     if ($refer) {
         $options[CURLOPT_REFERER] = $refer;
     }
     if ($ssl) {
         //support https
         $options[CURLOPT_SSL_VERIFYHOST] = false;
         $options[CURLOPT_SSL_VERIFYPEER] = false;
     }
     curl_setopt_array($curlObj, $options);
     $returnData = curl_exec($curlObj);
     if (curl_errno($curlObj)) {
         //error message
         $returnData = curl_error($curlObj);
     }
     curl_close($curlObj);
     return $returnData;
 }

如果支付后未自动下载,请主动联系站长,站长QQ 610176732

当前页面:银河源码 » CURL的get和post请求(自认为完美,mark下)

评论

文章评论已关闭!