首页 >php教程 >PHP源码 >curl post 与 get

curl post 与 get

PHP中文网
PHP中文网原创
2016-05-25 17:07:241051浏览

代码

function curl_post_contents($url, $data = array(), $cookiepath = '',$timeout=10){
		$userAgent = 'Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1)';
		$referer = $url;
		if(!is_array($data) || !$url) return '';
	    $post = '';
		foreach($data as $key => $value){
	        $post .= $key . '=' . urlencode($value) . '&';
	    }
		rtrim($post, '&');
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_URL, $url);				//设置访问的url地址
		curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);		//设置超时
		curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);	//用户访问代理 User-Agent
		curl_setopt($ch, CURLOPT_REFERER, $referer);		//设置 referer
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);		//跟踪301
		curl_setopt($ch, CURLOPT_POST, 1);					//指定post数据
		curl_setopt($ch, CURLOPT_POSTFIELDS, $post);		//添加变量
		curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiepath);	//COOKIE的存储路径,返回时保存COOKIE的路径
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);		//返回结果
		$content = curl_exec($ch);
		curl_close($ch);
		return $content;
	}
	
	 function curl_get_contents($url, $timeout = 5)
	{
	    $ch = curl_init();
	    curl_setopt($ch, CURLOPT_URL, $url);
	    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
	    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)');

	    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	    @curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, true);
	    curl_setopt($ch, CURLOPT_DNS_CACHE_TIMEOUT, 86400); // 缓存一天
	    $content = curl_exec($ch);
	    curl_close($ch);
	    return $content;
	}
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn