php使用curl实现get和post请求的方法

PHP 投稿 35800 0 评论

php使用curl实现get和post请求的方法

php 使用 curl 模拟实现 get 和 post请求的方法。


<?php
/*
* url post请求地址
* post post数据
* cookie cookie数据,传递一个包含HTTP cookie的头连接
* cookie 获取到的cookie信息的保存位置
* referer 在HTTP请求中包含一个"referer"头的字符串
*/
function vcurl($url,$post='',$cookie='',$cookiejar='',$referer=''){ 
	$tmpInfo='';
	$cookiepath=getcwd().'./'.$cookiejar;
	$curl=curl_init();
	curl_setopt($curl,CURLOPT_URL,$url);
	curl_setopt($curl,CURLOPT_USERAGENT,$_SERVER['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($cookie){
		curl_setopt($curl,CURLOPT_COOKIE,$cookie);
	}
	if($cookiejar){
		curl_setopt($curl,CURLOPT_COOKIEJAR,$cookiepath);
		curl_setopt($curl,CURLOPT_COOKIEFILE,$cookiepath);
	}
	curl_setopt($curl,CURLOPT_TIMEOUT,100);
	curl_setopt($curl,CURLOPT_HEADER,0);
	curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
	$tmpInfo=curl_exec($curl);
	if(curl_errno($curl)){
		echo '<pre><b>错误:</b><br />'.curl_error($curl);
	}
	curl_close($curl);
	return $tmpInfo;
}

使用方法如下:


echo vcurl('http://www.feishuai.vip/post.php',array('id'=>235,'title'=>'php模拟发送get和post请求'),'',tempnam('./temp','cookie'));

编程笔记 » php使用curl实现get和post请求的方法

赞同 (192) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽