原文章转自 it技术擎 里面有更丰富的资料
下面的示例中举例了php curl的几种用法的汇总
包含1、 post请求数据
2、get请求数据
3、发送特定格式的数据
4、在请求的时候带cookie
下面是代码:
function curl_post($url,$post_data = array(),$method="get", $cookie = array()){
$session_id = md5($url).".log";
$ch = curl_init($url) ;
curl_setopt($ch, CURLOPT_HEADER,1);
if(strtolower($method)=="post"){
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post_data);
}
if(strtolower($method)=="json"){
$post_data_str = json_encode($post_data);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post_data_str);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($post_data_str))
);
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true); // 获取数据返回
curl_setopt($ch, CURLOPT_BINARYTRANSFER,true); // 在启用 CURLOPT_RETURNTRANSFER 时候将获取数据返回
curl_setopt($ch, CURLOPT_COOKIEFILE,$session_id);
curl_setopt($ch, CURLOPT_COOKIEJAR,$session_id);
$output = curl_exec($ch) ;
curl_close($ch);
return $output;
}
$link = "http://it.techqing.com";
curl_post($link);