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 编程的 5个良好习惯
Feb 20 PHP
PHPMailer 中文使用说明小结
Jan 22 PHP
用PHP将数据导入到Foxmail的实现代码
Sep 05 PHP
php解析html类库simple_html_dom(详细介绍)
Jul 05 PHP
php生成缩略图填充白边(等比缩略图方案)
Dec 25 PHP
php的curl封装类用法实例
Nov 07 PHP
PHP实现抓取HTTPS内容
Dec 01 PHP
php实现专业获取网站SEO信息类实例
Apr 02 PHP
PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
Dec 24 PHP
PHPExcel在linux环境下导出报500错误的解决方法
Jan 26 PHP
PHP实现执行外部程序的方法详解
Aug 17 PHP
ThinkPHP5 验证器的具体使用
May 31 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 post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
php基于SQLite实现的分页功能示例
2017/06/21 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
javascript web页面刷新的方法收集
2009/07/02 Javascript
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
jquery 淡入淡出效果的简单实现
2014/02/07 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
uploadify多文件上传参数设置技巧
2015/11/16 Javascript
在JavaScript中call()与apply()区别
2016/01/22 Javascript
基于BootStrap Metronic开发框架经验小结【一】框架总览及菜单模块的处理
2016/05/12 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
2017/01/03 Javascript
jquery.uploadifive插件怎么解决上传限制图片或文件大小问题
2017/05/08 jQuery
详解vue-cli中配置sass
2017/06/21 Javascript
react native仿微信PopupWindow效果的实例代码
2017/08/07 Javascript
Node 自动化部署的方法
2017/10/17 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
深入理解JavaScript的值传递和引用传递
2018/10/24 Javascript
ES2020系列之空值合并运算符 '??'
2020/07/22 Javascript
Vue路由 重定向和别名的区别说明
2020/09/09 Javascript
[01:00:49]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第二场 1月31日
2021/03/11 DOTA
采用Psyco实现python执行速度提高到与编译语言一样的水平
2014/10/11 Python
Python 查找list中的某个元素的所有的下标方法
2018/06/27 Python
实例详解Python模块decimal
2019/06/26 Python
OpenCV 模板匹配
2019/07/10 Python
python cv2截取不规则区域图片实例
2019/12/21 Python
HTML5之消息通知的使用(Web Notification)
2018/10/30 HTML / CSS
木工主管岗位职责
2013/12/08 职场文书
应届毕业生自我鉴定范文
2013/12/27 职场文书
元旦晚会邀请函
2014/02/01 职场文书
个人工作主要事迹
2014/05/08 职场文书
工程安全生产协议书
2014/11/21 职场文书
医院病假条怎么写
2015/08/17 职场文书
学习心得体会
2019/06/20 职场文书
MySQL安装后默认自带数据库的作用详解
2021/04/27 MySQL
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android
PHP RabbitMQ消息列队
2022/05/11 PHP