/**
* 发送HTTP请求方法,目前只支持CURL发送请求
* @param string $url 请求URL
* @param array $params 请求参数
* @param string $method 请求方法GET/POST
* @return array $data 响应数据
*/
protected function http($url, $params, $method = \'GET\', $header = array(), $multi = false){
$opts = array(
CURLOPT_TIMEOUT => 30,
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:
throw new \Exception(\'不支持的请求方式!\');
}
/* 初始化并执行curl请求 */
$ch = curl_init();
curl_setopt_array($ch, $opts);
$data = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);
if($error) throw new \Exception(\'请求发生错误:\' . $error);
return $data;
}
相关文章:
- 【php】https请求 2021-06-08
- php HTTP请求 2022-12-23
- PHP http请求 2022-12-23
- PHP HTTP请求 2022-12-23
- Socket.Io+HttpWebRequest 请求Api 2022-12-23
- php脚本多进程请求api的限流 2021-06-26
- php get/post 请求(可用于请求api)获取手机号码归属地 2022-12-23
- PHP异步请求 2018-05-20