解析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 相关文章推荐
PHP获取网站域名和地址的代码
Aug 17 PHP
PHP安全防范技巧分享
Nov 03 PHP
PHP逐行输出(ob_flush与flush的组合)
Feb 04 PHP
PHP压缩html网页代码(清除空格,换行符,制表符,注释标记)
Apr 02 PHP
php ZipArchive压缩函数详解实例
Nov 06 PHP
php输出金字塔的2种实现方法
Dec 16 PHP
PHP+jquery+ajax实现即时聊天功能实例
Dec 23 PHP
php实现redis数据库指定库号迁移的方法
Jan 14 PHP
PHP安装memcached扩展笔记
May 28 PHP
6个超实用的PHP代码片段
Aug 10 PHP
PHP连接sftp并下载文件的方法教程
Aug 26 PHP
PHP的mysqli_sqlstate()函数讲解
Jan 23 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
AM/FM收音机的安装与调试
2021/03/02 无线电
PHP登录环节防止sql注入的方法浅析
2014/06/30 PHP
php封装的单文件(图片)上传类完整实例
2016/10/18 PHP
JavaScript的面向对象(二)
2006/11/09 Javascript
javascript 计算两个整数的百分比值
2009/12/26 Javascript
原生js实现shift/ctrl/alt按键的获取
2013/04/08 Javascript
js获取指定日期前后的日期代码
2013/08/20 Javascript
javaScript中的this示例学习详解及工作原理
2014/01/13 Javascript
jQuery简易图片放大特效示例代码
2014/06/09 Javascript
js动态往表格的td中添加图片并注册事件
2014/06/12 Javascript
深入浅析Vue全局组件与局部组件的区别
2018/06/15 Javascript
使用koa2创建web项目的方法步骤
2019/03/12 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
python生成九宫格图片
2018/11/19 Python
Python+OpenCV实现图像融合的原理及代码
2018/12/03 Python
Python通过paramiko远程下载Linux服务器上的文件实例
2018/12/27 Python
python多进程读图提取特征存npy
2019/05/21 Python
Python GUI学习之登录系统界面篇
2019/08/21 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
Python 网络编程之UDP发送接收数据功能示例【基于socket套接字】
2019/10/11 Python
简单了解Java Netty Reactor三种线程模型
2020/04/26 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
Autopep8的使用(python自动编排工具)
2021/03/02 Python
css3截图_动力节点Java学院整理
2017/07/11 HTML / CSS
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
C#实现启动一个进程
2016/10/01 面试题
中专毕业生自荐信
2013/11/16 职场文书
将相和教学反思
2014/02/04 职场文书
小学数学国培感言
2014/03/10 职场文书
大学生党员个人剖析材料
2014/10/08 职场文书
考勤制度通知
2015/04/25 职场文书
常住证明范本
2015/06/23 职场文书
合同范本之电脑出租
2019/08/13 职场文书
导游词之苏州阳澄湖
2019/11/15 职场文书
Redis IP地址的绑定的实现
2021/05/08 Redis
python 批量压缩图片的脚本
2021/06/02 Python