//发送curl请求的函数
function curl_request($url, $post = false, $data=array(), $https = false){ //使用curl_init初始化一个curl请求 $ch = curl_init($url); //默认为get请求不需要设置请求方式和请求参数 //如果是post请求 if($post){ //设置请求方式 curl_setopt($ch, CURLOPT_POST, true); //设置请求参数 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); } //默认发送http请求,如果是https,需要做特殊设置 if($https){ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//验证证书 设置为false表示不验证 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);//验证证书和主机是否匹配 } //默认情况下,curl_exec返回true|false,如果要得到返回数据,需要设置CURLOPT_RETURNTRANSFER curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //发送请求 $res = curl_exec($ch); if(!$res){ //请求失败,通过curl_error获取错误信息 $error = curl_error($ch); //重新组装返回结果。如果返回的是数组代表请求失败 $res = array( 'error' => $error ); } //关闭curl请求 curl_close($ch); //返回结果给调用方 return $res;}