PHP CURL中传递cookie的方法步骤


Posted in PHP onMay 09, 2019

curl的cookie怎么使用?新手都很头疼的,curl的参数太多了,其中cookie部分就涉及了4个。

当然了,手册上明白写的curl的cookie是3个,但是嘛,不是还有个header的参数嘛,里面可以包含cookie.

curl非常的好用。最主要的是要熟悉curl_setopt的用法。

curl_setopt ($ch, CURLOPT_COOKIE , $cookie );

这里的cookie值要用;分开的,而不是用&。也不需要用urlencode编码,当然了,编码了就更好。

$cookie = "a=b;c=d;name=方世玉";

注意使用这个的时候,不可在 curl_setopt ($ch, CURLOPT_HTTPHEADER , $header );

的$header里包含Cookie参数,否则会重叠,造成cookie不可预见的情况发生。

<? php
$url = "http://www.test.com/zzzz.php";
$post_data = array (
  "foo" =< "bar",
  "query" =< "Nettuts",
  "action" =< "Submit"
);
$cookie_jar_index = 'f:/js/test/cookie.txt';
$cookie = "a=b;c=d;name=方世玉";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 我们在POST数据哦!
curl_setopt($ch, CURLOPT_POST, 1);
// 把post的变量加上
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$output = curl_exec($ch);
curl_close($ch);
echo $output;

附上用来分析IE中cookie的代码

<? php
function join_cookie($cook)
{
  foreach( $cook as $k=<$v )
  {
  $d[] =$k."=".$v;
  }
$data = implode(";",$d);
return $data;
}
function pase_cookie($cookFile,$encode=true)
{
$cookie = file_get_contents ( $cookFile );
$citem = explode("*\n",$cookie);
foreach( $citem as $c )
{
list($ckey,$cvalue) = explode("\n",$c);
if($ckey!='')$cook[$ckey] = $cvalue;
}
return $cook;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
第四节 构造函数和析构函数 [4]
Oct 09 PHP
用php或asp创建网页桌面快捷方式的代码
Mar 23 PHP
php性能优化分析工具XDebug 大型网站调试工具
May 22 PHP
浅析php变量修饰符static的使用
Jun 28 PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 PHP
PHP自动重命名文件实现方法
Nov 04 PHP
php实现约瑟夫问题的方法小结
Mar 23 PHP
php PDO异常处理详解
Nov 20 PHP
thinkphp3.2中实现phpexcel导出带生成图片示例
Feb 14 PHP
ThinkPHP删除栏目(实现批量删除栏目)
Jun 21 PHP
PHP实现的超长文本分页显示功能示例
Jun 04 PHP
Laravel框架实现多个视图共享相同数据的方法详解
Jul 09 PHP
PHP正则表达式处理函数(PCRE 函数)实例小结
May 09 #PHP
Laravel配置全局公共函数的方法步骤
May 09 #PHP
Laravel Validator自定义错误返回提示消息并在前端展示
May 09 #PHP
PHP正则表达式笔记与实例详解
May 09 #PHP
PHP抽象类与接口的区别实例详解
May 09 #PHP
php和vue配合使用技巧和方法
May 09 #PHP
php查询内存信息操作示例
May 09 #PHP
You might like
smarty实例教程
2006/11/19 PHP
PHP中通过加号合并数组的一个简单方法分享
2011/01/27 PHP
通过PHP修改Linux或Unix口令的方法分享
2012/01/30 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
我也种棵OO树JXTree[js+css+xml]
2007/04/02 Javascript
JavaScript控制图片加载完成后调用回调函数的方法
2015/03/20 Javascript
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
2016/12/15 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
JavaScript正则表达式校验与递归函数实际应用实例解析
2017/08/04 Javascript
vue.js中父组件调用子组件的内部方法示例
2017/10/22 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
微信web端后退强制刷新功能的实现代码
2018/03/04 Javascript
JQuery选中select组件被选中的值方法
2018/03/08 jQuery
angularjs的单选框+ng-repeat的实现方法
2018/09/12 Javascript
typescript nodejs 依赖注入实现方法代码详解
2019/07/21 NodeJs
为什么推荐使用JSX开发Vue3
2020/12/28 Vue.js
[01:10]DOTA2次级职业联赛 - Fly战队宣传片
2014/12/01 DOTA
[43:58]DOTA2上海特级锦标赛C组败者赛 Newbee VS Archon第二局
2016/02/27 DOTA
python列表操作使用示例分享
2014/02/21 Python
python实现跨文件全局变量的方法
2014/07/07 Python
详解python中executemany和序列的使用方法
2017/08/12 Python
Python产生Gnuplot绘图数据的方法
2018/11/09 Python
Python多继承以及MRO顺序的使用
2019/11/11 Python
python base64库给用户名或密码加密的流程
2020/01/02 Python
如何实现更换Jupyter Notebook内核Python版本
2020/05/18 Python
css3编写浏览器背景渐变背景色的方法
2018/03/05 HTML / CSS
CSS3实现菜单悬停效果
2020/11/17 HTML / CSS
Lungolivigno Fashion官网:高级时装在线购物
2020/10/17 全球购物
会计人员演讲稿
2014/09/11 职场文书
2015年个人自我剖析材料
2014/12/29 职场文书
2015年光棍节活动总结
2015/03/24 职场文书
修辞手法有哪些?
2019/08/29 职场文书
解决redis sentinel 频繁主备切换的问题
2021/04/12 Redis
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers
nginx配置之并发频次限制
2022/04/18 Servers
Meta增速拉垮,元宇宙难当重任
2022/04/29 数码科技