/**
* @abstract向服务器转接的小服务器发送数据请求
* @param string $url 请求服务器地址
* @param array $data 转接请求的curl数据
* @return array boolean string
*/
public function server_request($url,$data,$timeout=50,$header=0,$muti=false){
$curl = curl_init(); // 启动一个CURL会话
curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
//curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);//让cURL自己判断使用哪个版本
//curl_setopt($curl, CURLOPT_VERBOSE, 1);
//curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
//curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); // 从证书中检查SSL加密算法是否存在
//curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
//curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转
//curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer
curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); // Post提交的数据包
curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); //设置超时限制防止死循环
curl_setopt($curl, CURLOPT_HTTPHEADER, array()); // 显示返回的Header区域内容
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
$curlinfo = curl_exec($curl); // 执行操作
//dump(curl_error($curl));
if(curl_errno($curl)) {
dump(curl_error($curl));
$returndata = null;
}else{
if($muti){
$returndata = json_decode($curlinfo,true);
}else{
$returndata = $curlinfo;
}
}
curl_close($curl);
// 关闭CURL会话
return $returndata; // 返回数据
}
网友评论