php curl get请求
private function doGet($url)
{
//初始化
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
// 执行后不直接打印出来
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
// 跳过证书检查
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// 不从证书中检查SSL加密算法是否存在
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); //强制协议为1.0
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect'=>'')); //头部要送出'Expect: '
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 ); //强制使用IPV4协议解析域名
//执行并获取HTML文档内容
$output = curl_exec($ch);
//释放curl句柄
curl_close($ch);
return $output;
}
php curl get请求
/**
* 请求
* @param $Url
* @param $Params
* @param string $Method
* @return int
*/
private function payback($Url, $Params, $Method='post'){
file_put_contents("alog.txt",date('Y/m/d H:i:s',time()).':'.$Url.'/'.$Params, FILE_APPEND);
$rs = 0;
$Curl = curl_init();//初始化curl
if ('get' == $Method){//以GET方式发送请求
curl_setopt($Curl, CURLOPT_URL, "$Url?$Params");
}else{//以POST方式发送请求
curl_setopt($Curl, CURLOPT_URL, trim($Url));
curl_setopt($Curl, CURLOPT_POST, 1);//post提交方式
curl_setopt($Curl, CURLOPT_POSTFIELDS, $Params);//设置传送的参数
}
curl_setopt($Curl, CURLOPT_HEADER, false);//设置header,输出结果时会打印出来
curl_setopt($Curl, CURLOPT_RETURNTRANSFER, true);//要求结果为字符串且输出到屏幕上
//curl_setopt($Curl, CURLOPT_CONNECTTIMEOUT, 3);//设置等待时间
// curl_setopt($Curl,CURLINFO_HEADER_OUT,true);
curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts
curl_setopt($Curl, CURLOPT_SSL_VERIFYHOST, FALSE);
$Res = curl_exec($Curl);//运行curl
file_put_contents("alog.txt", date('Y/m/d H:i:s', time()) . ':rst' . $Res, FILE_APPEND);
debug($Url);
debug($Params);
debug($Res);
$ss = curl_getinfo($Curl);
debug($ss);
$err = curl_error($Curl);
debug($err);
$err = curl_errno($Curl);
debug($err);
if ( $Res == 'success') {
$rs = 1;
} else {
$rs = 0;
}
curl_close($Curl);//关闭curl
return $rs;
}
/**
* 发送post请求.
*
* @param $url 地址
* @param $args 参数
* @param $timeout 过期时间 秒
*
* @author yzm
*
* @return mixed
*/
function http_post($url, $args, $timeout = 30)
{
$_header = [
// 'Content-Type: application/json; charset=utf-8',
// 'Content-Length: ' . strlen($args)
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_HTTPHEADER, $_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
$ret = curl_exec($ch);
curl_close($ch);
return $ret;
}