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 中的面向对象编程:通向大型 PHP 工程的办法
Dec 03 PHP
php学习之 循环结构实现代码
Jun 09 PHP
PHP程序级守护进程的实现与优化的使用概述
May 02 PHP
spl_autoload_register与autoload的区别详解
Jun 03 PHP
php中try catch捕获异常实例详解
Nov 21 PHP
PHP5多态性与动态绑定介绍
Apr 03 PHP
详解YII关联查询
Jan 10 PHP
zen cart实现订单中增加paypal中预留电话的方法
Jul 12 PHP
PHP类的特性实例分析
Sep 28 PHP
PHP strcmp()和strcasecmp()的区别实例
Nov 05 PHP
PHP面向对象程序设计之对象的遍历操作示例
Jun 12 PHP
详解使用php-cs-fixer格式化代码
Sep 16 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
实用函数8
2007/11/08 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
2015/12/10 PHP
PHP下载远程图片的几种方法总结
2017/04/07 PHP
js 调整select 位置的函数
2008/02/21 Javascript
javascript中简单的进制转换代码实例
2013/10/26 Javascript
JS实现的仿东京商城菜单、仿Win右键菜单及仿淘宝TAB特效合集
2015/09/28 Javascript
深入理解关于javascript中apply()和call()方法的区别
2016/04/12 Javascript
jQuery侧边栏实现代码
2016/05/06 Javascript
Javascript之Number对象介绍
2016/06/07 Javascript
浅谈$('div a') 与$('div>a')的区别
2016/07/18 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
js中创建对象的几种方式
2017/02/05 Javascript
几行js代码实现自适应
2017/02/24 Javascript
浅谈原生JS中的延迟脚本和异步脚本
2017/07/12 Javascript
详解nodejs通过响应回写的方式渲染页面资源
2018/04/07 NodeJs
简单了解vue中父子组件如何相互传递值(基础向)
2019/07/12 Javascript
vue实现编辑器键盘抬起时内容跟随光标距顶位置向上滚动效果
2020/05/28 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
2020/08/30 Javascript
python 获取文件列表(或是目录例表)
2009/03/25 Python
Scrapy基于selenium结合爬取淘宝的实例讲解
2018/06/13 Python
vue.js实现输入框输入值内容实时响应变化示例
2018/07/07 Python
python实现批量修改服务器密码的方法
2019/08/13 Python
python opencv如何实现图片绘制
2020/01/19 Python
Matplotlib使用字符串代替变量绘制散点图的方法
2020/02/17 Python
Matplotlib.pyplot 三维绘图的实现示例
2020/07/28 Python
领先的钻石和订婚戒指零售商:Diamonds-USA
2016/12/11 全球购物
德国化妆品和天然化妆品网上商店:kosmetikfuchs.de
2017/06/09 全球购物
Draper James官网:知名演员瑞茜·威瑟斯彭所创品牌
2017/10/25 全球购物
美国手工艺品市场的领导者:Annie’s
2019/04/04 全球购物
如何用Python输出一个Fibonacci数列
2016/08/28 面试题
大学生创业计划书的用途
2014/01/08 职场文书
最新结婚典礼主持词
2014/03/14 职场文书
2015年安全教育月活动总结
2015/03/26 职场文书
归途列车观后感
2015/06/17 职场文书
员工手册董事长致辞
2015/07/29 职场文书