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判断字符以及字符串的包含方法属性
Aug 30 PHP
用php将任何格式视频转为flv的代码
Sep 03 PHP
php strcmp使用说明
Apr 22 PHP
web目录下不应该存在多余的程序(安全考虑)
May 09 PHP
php excel reader读取excel内容存入数据库实现代码
Dec 06 PHP
PHP IE中下载附件问题解决方法
Jan 07 PHP
php mail to 配置详解
Jan 16 PHP
php中instanceof 与 is_a()区别分析
Mar 03 PHP
thinkphp微信开发(消息加密解密)
Dec 02 PHP
PHP编程实现计算抽奖概率算法完整实例
Aug 09 PHP
PHP迭代与递归实现无限级分类
Aug 28 PHP
Yii2.0框架模型多表关联查询示例
Jul 18 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 excel reader读取excel内容存入数据库实现代码
2012/12/06 PHP
PHP查询数据库中满足条件的记录条数(两种实现方法)
2013/01/29 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
2017/09/27 PHP
js关闭模态窗口刷新父页面或跳转页面
2012/12/13 Javascript
你必须知道的Javascript知识点之"字面量和对应类型"说明介绍
2013/04/23 Javascript
jQuery中的read和JavaScript中的onload函数的区别
2014/08/27 Javascript
js 通过cookie实现刷新不变化树形菜单
2014/10/30 Javascript
JavaScript正则表达式中的ignoreCase属性使用详解
2015/06/16 Javascript
JS实现跟随鼠标的链接文字提示框效果
2015/08/06 Javascript
js添加绑定事件的方法
2016/05/15 Javascript
基于JavaScript实现下拉列表左右移动代码
2017/02/07 Javascript
webpack多页面开发实践
2017/12/18 Javascript
微信小程序支付功能 php后台对接完整代码分享
2018/06/12 Javascript
解决vue同一slot在组件中渲染多次的问题
2018/09/06 Javascript
详解原生JS回到顶部
2019/03/25 Javascript
mpvue 页面预加载新增preLoad生命周期的两种方式
2019/10/17 Javascript
jQuery 选择器用法基础入门示例
2020/01/04 jQuery
Nodejs实现WebSocket代码实例
2020/05/19 NodeJs
基于vue和bootstrap实现简单留言板功能
2020/05/30 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
2020/11/03 Javascript
再也不怕 JavaScript 报错了,怎么看怎么处理都在这儿
2020/12/09 Javascript
Python3.0与2.X版本的区别实例分析
2014/08/25 Python
浅析Python中的序列化存储的方法
2015/04/28 Python
python解决汉字编码问题:Unicode Decode Error
2017/01/19 Python
Python hashlib模块用法实例分析
2018/06/12 Python
pandas计算最大连续间隔的方法
2019/07/04 Python
tensorflow tf.train.batch之数据批量读取方式
2020/01/20 Python
python代码实现图书管理系统
2020/11/30 Python
前端H5 Video常见使用场景简介
2020/08/21 HTML / CSS
美国知名的摄影器材销售网站:Adorama
2017/02/01 全球购物
女子锻炼服装和瑜伽服装:Splits59
2019/03/04 全球购物
大学生实习感言
2014/01/16 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
招商银行收入证明
2015/06/17 职场文书