解析curl提交GET,POST,Cookie的简单方法


Posted in PHP onJune 29, 2013
<?php
$get_data = array (
    "get1"=> "get1",
    "get2" => "get2",
    "get3" => "get3"
);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://test.test.com/test.php?'.http_build_query($get_data));
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11');
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
$post_data = array (
    "p1" => "test1",
    "p2" => "test2",
    "p3" => "test3"
);
curl_setopt($curl, CURLOPT_POST, true);
//["CONTENT_TYPE"]=> string(70) "multipart/form-data; boundary=------077a996f5afe"
//要发送文件,在文件名前面加上@前缀并使用完整路径。
//使用数组提供post数据时,CURL组件大概是为了兼容@filename这种上传文件的写法,默认把content_type设为了multipart/form-data。
//虽然对于大多数web服务器并没有影响,但是还是有少部分服务器不兼容。
curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
//["CONTENT_TYPE"]=> string(33) "application/x-www-form-urlencoded"
//curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post_data));
//在没有需要上传文件的情况下,尽量对post提交的数据进行http_build_query,然后发送出去,能实现更好的兼容性,更小的请求数据包。
$cookies = array(
 'c1'=>'v1',
 'c2'=>'v2',
 'c3'=>'v3',
);
$cookies_string = '';
foreach($cookies as $name=>$value){ 
 $cookies_string .= $name.'='.$value.';';
}
curl_setopt($curl, CURLOPT_COOKIE, $cookies_string);
$result = curl_exec($curl);
curl_close($curl);
var_dump($result);
exit;
PHP 相关文章推荐
PHP4实际应用经验篇(7)
Oct 09 PHP
PHP 网页过期时间的控制代码
Jun 29 PHP
php 从数据库提取二进制图片的处理代码
Sep 09 PHP
PHP如何抛出异常处理错误
Mar 02 PHP
PHP 中检查或过滤IP地址的实现代码
Nov 27 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 PHP
php生成唯一数字id的方法汇总
Nov 18 PHP
yii2高级应用之自定义组件实现全局使用图片上传功能的方法
Oct 08 PHP
php 5.4 全新的代码复用Trait详解
Jan 05 PHP
关于PHP通用返回值设置方法
Mar 31 PHP
ThinkPHP实现静态缓存和动态缓存示例代码
May 02 PHP
解析 thinkphp 框架中的部分方法
May 07 PHP
解析PHP的session过期设置
Jun 29 #PHP
php selectradio和checkbox默认选择的实现方法详解
Jun 29 #PHP
php小经验:解析preg_match与preg_match_all 函数
Jun 29 #PHP
解析php session_set_save_handler 函数的用法(mysql)
Jun 29 #PHP
使用PHP获取当前url路径的函数以及服务器变量
Jun 29 #PHP
如何使用PHP实现javascript的escape和unescape函数
Jun 29 #PHP
解析php中的escape函数
Jun 29 #PHP
You might like
部署PHP时的4个配置修改说明
2015/10/19 PHP
php+ajax实现仿百度查询下拉内容功能示例
2017/10/20 PHP
图片onload事件触发问题解决方法
2011/07/31 Javascript
json数据与字符串的相互转化示例
2013/09/18 Javascript
三种检测iPhone/iPad设备方向的方法
2014/04/23 Javascript
深入探究使JavaScript动画流畅的一些方法
2015/06/30 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
AngularJS基础 ng-switch 指令简单示例
2016/08/03 Javascript
Node.js与MySQL交互操作及其注意事项
2016/10/05 Javascript
jQuery动态移除和添加背景图片的方法详解
2017/03/07 Javascript
nodejs中art-template模板语法的引入及冲突解决方案
2017/11/07 NodeJs
Vue2.0 实现移动端图片上传功能
2018/05/30 Javascript
jQuery轮播图实例详解
2018/08/15 jQuery
使用Vuex解决Vue中的身份验证问题
2018/09/28 Javascript
vue-quill-editor+plupload富文本编辑器实例详解
2018/10/19 Javascript
Koa 使用小技巧(小结)
2018/10/22 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
你不知道的SpringBoot与Vue部署解决方案
2020/11/09 Javascript
[05:17]DOTA2誓师:今天我们在这里 明天TI4等我!
2014/03/26 DOTA
python def 定义函数,调用函数方式
2020/06/02 Python
python实现npy格式文件转换为txt文件操作
2020/07/01 Python
ALDO英国官网:加拿大女鞋品牌
2018/02/19 全球购物
荷兰在线啤酒店:Beerwulf
2019/08/26 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
关于廉洁的广播稿
2014/01/30 职场文书
聘用意向书范本
2014/04/01 职场文书
优秀的导游求职信范文
2014/04/06 职场文书
小学生田径运动会广播稿
2014/09/11 职场文书
关于工作经历的证明书
2014/10/11 职场文书
500字小学生检讨书
2015/02/19 职场文书
公司行政助理岗位职责
2015/04/11 职场文书
工作犯错保证书
2015/05/11 职场文书
新闻稿件写作技巧
2015/07/18 职场文书
2015年学校政教工作总结
2015/07/20 职场文书
教师节领导致辞
2015/07/29 职场文书
2016秋季运动会开幕词
2016/03/04 职场文书