php使用CURL不依赖COOKIEJAR获取COOKIE的方法


Posted in PHP onJune 17, 2015

本文实例讲述了php使用CURL不依赖COOKIEJAR获取COOKIE的方法。分享给大家供大家参考。具体分析如下:

PHP中CURL类是一个非常牛逼的工具类,具体怎么牛逼就不??铝恕?/p>

对于COOKIE,CURL类也有很不错的支持,但不够灵活,并未能通过现成的方法以变量的方法获取到,而以要通过以下方法实现。

// 把COOKIE保存至cookie.txt 
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); 
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

先把COOKIE保存文件,调用的时候还得读取文件,这样意味着两次的IO操作,效率如何,不用说大家都清楚了。
那么有没有办法可以绕过写读文件呢?不卖关子,直接上代码:

// 初始化CURL 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
// 获取头部信息 
curl_setopt($ch, CURLOPT_HEADER, 1); 
// 返回原生的(Raw)输出 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
// 执行并获取返回结果 
$content = curl_exec($ch); 
// 关闭CURL 
curl_close($ch); 
// 解析HTTP数据流 
list($header, $body) = explode("\r\n\r\n", $content); 
// 解析COOKIE 
preg_match("/set\-cookie:([^\r\n]*)/i", $header, $matches); 
// 后面用CURL提交的时候可以直接使用 
// curl_setopt($ch, CURLOPT_COOKIE, $cookie); 
$cookie = $matches[1];

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
如何正确理解PHP的错误信息
Oct 09 PHP
PHP define函数的使用说明
Aug 27 PHP
array_multisort实现PHP多维数组排序示例讲解
Jan 04 PHP
注册页面之前先验证用户名是否存在的php代码
Jul 14 PHP
codeigniter集成ucenter1.6双向通信的解决办法
Jun 12 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
Jul 22 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
Dec 15 PHP
php基于Fleaphp框架实现cvs数据导入MySQL的方法
Feb 23 PHP
PHP请求Socket接口测试实例
Aug 12 PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 PHP
PHP 计算两个特别大的整数实例代码
May 07 PHP
php代码调试利器firephp安装与使用方法分析
Aug 21 PHP
PHP封装的HttpClient类用法实例
Jun 17 #PHP
PHP处理postfix邮件内容的方法
Jun 16 #PHP
PHP限制HTML内容中图片必须是本站的方法
Jun 16 #PHP
php采集中国代理服务器网的方法
Jun 16 #PHP
分享php分页的功能模块
Jun 16 #PHP
PHP生成plist数据的方法
Jun 16 #PHP
php动态绑定变量的用法
Jun 16 #PHP
You might like
php设计模式之策略模式应用案例详解
2019/06/17 PHP
用函数式编程技术编写优美的 JavaScript
2006/11/25 Javascript
DWR Ext 加载数据
2009/03/22 Javascript
passwordStrength 基于jquery的密码强度检测代码使用介绍
2011/10/08 Javascript
js中的eventType事件及其浏览器支持性介绍
2013/11/29 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
2014/08/22 Javascript
jQuery学习笔记之jQuery中的$
2015/01/19 Javascript
jQuery实现有动画淡出效果的二级折叠菜单代码
2015/10/17 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
清除浏览器缓存的几种方法总结(必看)
2016/12/09 Javascript
jQuery插件zTree实现单独选中根节点中第一个节点示例
2017/03/08 Javascript
详解Vue 方法与事件处理器
2017/06/20 Javascript
Vue-路由导航菜单栏的高亮设置方法
2018/03/17 Javascript
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
Angular2使用SVG自定义图表(条形图、折线图)组件示例
2019/05/10 Javascript
原生JS实现顶部导航栏显示按钮+搜索框功能
2019/12/25 Javascript
[01:41]DOTA2超级联赛专访YYF 称一辈子难忘TI2
2013/05/28 DOTA
[03:23]我的刀塔你不可能这么可爱 第一期金萌萌的故事
2014/06/20 DOTA
python操作gmail实例
2015/01/14 Python
使用python opencv对目录下图片进行去重的方法
2019/01/12 Python
python字符串的拼接方法总结
2019/11/18 Python
python每5分钟从kafka中提取数据的例子
2019/12/23 Python
Python : turtle色彩控制实例详解
2020/01/19 Python
使用python接受tgam的脑波数据实例
2020/04/09 Python
HTML5事件方法全部汇总
2016/05/12 HTML / CSS
时装界的“朋克之母”:Vivienne Westwood
2017/07/06 全球购物
德国最新街头服饰网上商店:BODYCHECK
2019/09/15 全球购物
后勤主管岗位职责
2014/03/01 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
班级读书活动总结
2014/06/30 职场文书
物业消防安全责任书
2014/07/23 职场文书
领导班子四风表现材料
2014/08/23 职场文书
拾金不昧感谢信范文
2015/01/21 职场文书
交通处罚决定书
2015/06/24 职场文书
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
浅谈 JavaScript 沙箱Sandbox
2021/11/02 Javascript