php中使用curl两个例子
2015-07-14 17:09 Caoxt 阅读(251) 评论(0) 编辑 收藏 举报第一个例子:
调用一个天气预告的接口
$data = 'theCityName=石家庄'; $cUrl = curl_init(); curl_setopt($cUrl, CURLOPT_URL, "http://www.webxml.com.cn/webservices/weatherwebservice.asmx/getWeatherbyCityName"); curl_setopt($cUrl, CURLOPT_HEADER, 0); curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cUrl, CURLOPT_POST, 1); curl_setopt($cUrl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($cUrl, CURLOPT_POSTFIELDS, $data); curl_setopt($cUrl, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded; charset=utf-8", "Content-length: ".strlen($data))); $output = curl_exec($cUrl); if(!curl_errno($cUrl)) { echo $output; }else{ echo "Curl error: ".curl_error($cUrl); } //echo str_replace("百度", "^_^", $output); curl_close($cUrl);
第二个例子:
模拟登录一个站点并保存某个页面
$data = 'name=admin&password=123456'; $cUrl = curl_init(); curl_setopt($cUrl, CURLOPT_URL, "http://www.***.com/a/login.html"); curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1); date_default_timezone_set('PRC'); curl_setopt($cUrl, CURLOPT_COOKIESESSION, TRUE); curl_setopt($cUrl, CURLOPT_COOKIEFILE, "cookiefile"); curl_setopt($cUrl, CURLOPT_COOKIEJAR, "cookiefile"); curl_setopt($cUrl, CURLOPT_COOKIE, session_name()."=".session_id()); curl_setopt($cUrl, CURLOPT_HEADER, 0); curl_setopt($cUrl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($cUrl, CURLOPT_POST, 1); //curl_setopt($cUrl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($cUrl, CURLOPT_POSTFIELDS, $data); curl_setopt($cUrl, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded; charset=utf-8", "Content-length: ".strlen($data))); curl_exec($cUrl); curl_setopt($cUrl, CURLOPT_URL, "http://www.***.com/a/analysisIndex.html");//要保存的页面 curl_setopt($cUrl, CURLOPT_POST, 0); curl_setopt($cUrl, CURLOPT_HTTPHEADER, array("Content-type: text/xml")); $output = curl_exec($cUrl); curl_close($cUrl); echo $output;