码迷,mamicode.com
首页 > Web开发 > 详细

php funciton mycurl

时间:2014-09-24 18:00:08      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:http   io   os   ar   文件   数据   cti   on   c   

/**
 +----------------------------------------------------------
 * CURL
 +----------------------------------------------------------
 * @param string$url 请求的URL
 * @param string|array$post POST数据 
 * @param string|array$cookie COOKIE数据
 * @param string$cookieFile 记录COOKIE的文件名
 * @param string$referer 来源页
 +----------------------------------------------------------
 * @return string
 +----------------------------------------------------------
 */
function mycurl($url ,$post=‘‘ ,$cookie=‘‘ ,$cookieFile=‘‘ ,$referer=‘‘){
    $curl = curl_init();
    $userAgent = ‘Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0‘;
    $userAgent = empty($userAgent)?$_SERVER[‘HTTP_USER_AGENT‘]:$userAgent;
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_TIMEOUT, 5);//cURL允许执行的最长秒数
    curl_setopt($curl, CURLOPT_HEADER, 0);//将头文件的信息作为数据流输出
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//true 以文件流形式返回;  false 直接输出;
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 0);//是否获取重定向的信息
    curl_setopt($curl, CURLOPT_MAXREDIRS, 5);//重定向最大次数
    curl_setopt($curl, CURLOPT_USERAGENT, $userAgent);//HTTP请求中User-Agent: "部分的内容
    if($referer){
    curl_setopt($curl, CURLOPT_REFERER, $referer);
    }else{
    curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
    }
    if($post){
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
    }
    if($cookieFile){
    $cookieFile = dirname(__FILE__).DIRECTORY_SEPARATOR.$cookieFile;
    curl_setopt($curl, CURLOPT_COOKIEFILE, $cookieFile);//包含cookie数据的文件名
    curl_setopt($curl, CURLOPT_COOKIEJAR, $cookieFile);//连接结束后保存cookie信息的文件
    }
    if($cookie){
    curl_setopt($curl, CURLOPT_COOKIE, $cookie);//HTTP请求中"Cookie: "部分的内容
    }
    $result = curl_exec($curl);
    if(curl_errno($curl))echo ‘<pre><b>ERROR:</b><br />‘.curl_error($curl).‘</pre>‘;
    curl_close($curl);
    return $result;
}



php funciton mycurl

标签:http   io   os   ar   文件   数据   cti   on   c   

原文地址:http://my.oschina.net/qianglong/blog/318224

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!