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的FTP学习(一)
Oct 09 PHP
PHPMailer邮件发送的实现代码
May 04 PHP
作为PHP程序员应该了解MongoDB的五件事
Jun 03 PHP
php 邮件发送问题解决
Mar 22 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
Sep 09 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
PHP实现简单ajax Loading加载功能示例
Dec 28 PHP
PHP文件操作详解
Dec 30 PHP
php中遍历二维数组并以表格的形式输出的方法
Jan 03 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
Mar 07 PHP
laradock环境docker-compose操作详解
Jul 29 PHP
Thinkphp 框架扩展之数据库驱动常用方法小结
Apr 23 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作的文本留言本的例子(二)
2006/10/09 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
2018/05/23 PHP
PHP中创建和编辑Excel表格的方法
2018/09/13 PHP
jQuery 处理网页内容的实现代码
2010/02/15 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
JS 弹出层 定位至屏幕居中示例
2014/05/21 Javascript
select多选 multiple的使用示例
2014/06/16 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
2015/06/26 Javascript
JS功能代码集锦
2016/05/04 Javascript
Json解析的方法小结
2016/06/22 Javascript
JS产生随机数的用法小结
2016/12/10 Javascript
基于Bootstrap的Java开发问题汇总(Spring MVC)
2017/01/15 Javascript
JS实现简单短信验证码界面
2017/08/07 Javascript
bootstrap multiselect下拉列表功能
2017/08/22 Javascript
JS实现的简单四则运算计算器功能示例
2017/09/27 Javascript
Vue实现表格中对数据进行转换、处理的方法
2018/09/06 Javascript
js实现简易点击切换显示或隐藏
2020/11/29 Javascript
python模块简介之有序字典(OrderedDict)
2016/12/01 Python
python九九乘法表的实例
2017/09/26 Python
对python-3-print重定向输出的几种方法总结
2018/05/11 Python
解决Pandas的DataFrame输出截断和省略的问题
2019/02/08 Python
Python中面向对象你应该知道的一下知识
2019/07/10 Python
python正则表达式匹配不包含某几个字符的字符串方法
2019/07/23 Python
python 多线程共享全局变量的优劣
2020/09/24 Python
Mio Skincare美国官网:身体紧致及孕期身体护理
2017/03/05 全球购物
美国本地交易和折扣网站:LocalFlavor.com
2017/10/26 全球购物
Bluebella美国官网:英国性感内衣品牌
2018/10/04 全球购物
Ruby如何创建一个线程
2013/03/10 面试题
新闻记者个人求职的自我评价
2013/11/28 职场文书
教学评估实施方案
2014/03/16 职场文书
城市规划应届生推荐信
2014/09/08 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
四风问题自查自纠工作情况报告
2014/10/28 职场文书
2014年卫生院工作总结
2014/12/03 职场文书
教师年终个人总结
2015/02/11 职场文书
教师学习十八届五中全会精神心得体会
2016/01/05 职场文书