解析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实际应用经验篇(5)
Oct 09 PHP
php 函数使用方法与函数定义方法
May 09 PHP
PHP临时文件的安全性分析
Jul 04 PHP
php采集内容中带有图片地址的远程图片并保存的方法
Jan 03 PHP
PHP框架Laravel的小技巧两则
Feb 10 PHP
PHP使用适合阅读的格式显示文件大小的方法
Mar 05 PHP
php动态绑定变量的用法
Jun 16 PHP
php遍历树的常用方法汇总
Jun 18 PHP
php生成验证码,缩略图及水印图的类分享
Apr 07 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
Oct 28 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
Nov 05 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
Feb 27 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正则校验用户名介绍
2008/07/19 PHP
php include加载文件两种方式效率比较
2010/08/08 PHP
PhpDocumentor 2安装以及生成API文档的方法
2014/05/21 PHP
WordPress中is_singular()函数简介
2015/02/05 PHP
jquery jqPlot API 中文使用教程(非常强大的图表工具)
2011/08/15 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
2014最热门的JavaScript代码高亮插件推荐
2014/11/25 Javascript
招聘网站基于jQuery实现自动刷新简历
2015/05/10 Javascript
JS实现支持Ajax验证的表单插件
2016/03/24 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
2016/05/12 Javascript
JS中对Cookie的操作详解
2016/08/05 Javascript
微信小程序 MINA文件结构
2016/10/17 Javascript
详解vue项目打包后通过百度的BAE发布到网上的流程
2018/03/05 Javascript
JS实现字符串翻转的方法分析
2018/08/31 Javascript
微信小程序自定义可滑动顶部TabBar选项卡实现页面切换功能示例
2019/05/14 Javascript
vue.js中ref及$refs的使用方法解析
2019/10/08 Javascript
利用Python和OpenCV库将URL转换为OpenCV格式的方法
2015/03/27 Python
python实现字符串连接的三种方法及其效率、适用场景详解
2017/01/13 Python
Python设计模式之解释器模式原理与用法实例分析
2019/01/10 Python
python实现屏保程序(适用于背单词)
2019/07/30 Python
python获取Pandas列名的几种方法
2019/08/07 Python
使用python matplotlib 画图导入到word中如何保证分辨率
2020/04/16 Python
python的链表基础知识点
2020/09/13 Python
python/golang 删除链表中的元素
2020/09/14 Python
Selenium关闭INFO:CONSOLE提示的解决
2020/12/07 Python
HTML5页面中尝试调起APP功能
2017/09/12 HTML / CSS
软件测试工程师笔试题带答案
2015/03/27 面试题
应届生高等护理求职信
2013/10/12 职场文书
学习演讲稿范文
2014/05/10 职场文书
市场营销专业自荐书
2014/06/10 职场文书
保险公司开门红口号
2014/06/21 职场文书
领导班子民主生活会整改措施(工商局)
2014/09/21 职场文书
教师个人学习总结
2015/02/11 职场文书
党员个人自我评价
2015/03/03 职场文书
MySQL 不等于的三种使用及区别
2021/06/03 MySQL
IDEA 2022 Translation 未知错误 翻译文档失败
2022/04/24 Java/Android