php curl实用案例,支持https
php curl实用案例,同时支持https,可以在项目中使用的代码:
function GetUrlInfo($url, $par=array(), $method='get'){
$strPar = '';
if(!empty($par)){
$strPar = http_build_query($para);
}
$ch = curl_init();
if($method != 'post'){
if(!empty($strPar)){
$url.="?".$strPar;
}
curl_setopt($ch, CURLOPT_URL, $url);
}else{
curl_setopt($ch, CURLOPT_URL, $url);
if(!empty($strPar)){
curl_setopt($ch, CURLOPT_POSTFIELDS, $strPar);
}
}
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
if(substr($url, 0, 5) == 'https'){
//支持https,不检查证书
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
}
$output = curl_exec($ch);
if($output === false){
$err = 'error_code:'.curl_errno($ch)."\t".'info:'.curl_error($ch);
echo $err;//或写日志
/*写日志
if(!is_dir(ROOT_DIR.'/log/curl/')){
mkdir(ROOT_DIR.'/log/curl/',0777,true);
}
$err = date("Y-m-d H:i:s")."\t".'error_code:'.curl_errno($ch)."\t".'info:'.curl_error($ch)."\t".'url:'.$url."\n";
file_put_contents(ROOT_DIR.'/log/curl/'.date('Y-m-d').'.txt',$err,FILE_APPEND);
*/
}
curl_close($ch);
return $output;
}
您还未登录,需要登录后才能发言