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

PHP中CURL类是一个非常牛逼的工具类,具体怎么牛逼就不啰嗦了。

对于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程序设计有所帮助。

转: https://blog.csdn.net/dbg8685/article/details/53289149

参考: http://www.zjmainstay.cn/php-curl

最新文章

  1. 【BZOJ-3881】Divljak AC自动机fail树 + 树链剖分+ 树状数组 + DFS序
  2. 【Java心得总结三】Java泛型上——初识泛型
  3. nodejs笔记
  4. angular directive scope
  5. 【2016-08-06】QTableWidget的一些用法总结
  6. php操作oracle的方法类集全
  7. Bernese单点定位数据准备及处理
  8. ZOJ1372 POJ 1287 Networking 网络设计 Kruskal算法
  9. js关于propotype的一些事-------Day62
  10. html input密码显示为“*”
  11. Hive数据倾斜解决方法总结
  12. Lucene 自动补全
  13. linux下postgres未能正常启动的解决过程
  14. opencv的resize和matlab的imresize函数的计算
  15. 多线程——interrupt方法
  16. openssl创建自己的CA certificate
  17. 提高JetBrains软件的性能
  18. mysql 同步数据到 ElasticSearch 的方案
  19. UC手机浏览器(U3内核)相关文档整理
  20. php 阿拉伯数字转中文

热门文章

  1. WIP 002- Rating info page design
  2. 移动端H5的一些基本知识点总结
  3. 排序基础之插入排序、冒泡排序、选择排序详解与Java代码实现
  4. JS 拦截/捕捉 全局错误 全局Error onerror
  5. java 生成二维码后叠加LOGO并转换成base64
  6. java 文件复制
  7. Windows开机BIOS启动快捷按键
  8. Linux下wc命令统计文件行数/词数/字符数/最长行字符数
  9. Anroid 4大组件之android.app.Service
  10. ios中自定义button