php中curl实现get和post请求
/*
* 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 '错误:
'.curl_error($curl);
}
curl_close($curl);
return $tmpInfo;}
使用方法如下:
echo vcurl('http://www.scutephp.com/post.php',array('id'=>235,'title'=>'php模拟发送get和post请求'),'',tempnam('./temp','cookie'));
推荐阅读
-
使用PHP Socket 编程模拟Http post和get请求
-
php中$_REQUEST、$_POST、$_GET的区别和联系小结
-
php中file_get_content 和curl以及fopen 效率分析
-
php中curl和soap方式请求服务超时问题的解决
-
微信小程序授权 获取用户的openid和session_key【后端使用java语言编写】,我写的是get方式,目的是测试能否获取到微信服务器中的数据,后期我会写上post请求方式。
-
php curl请求 (get请求,post请求,代理ip设置)
-
PHP的curl实现get,post和cookie(实例介绍)
-
PHP使用curl请求实现post方式上传图片文件功能示例
-
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
-
PHP get和post向服务器发送请求