php使用CURL不依赖COOKIEJAR获取COOKIE的方法

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

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

  对于COOKIE,CURL类也有很不错的支持,但不够灵活,并未能通过现成的方法以变量的方法获取到,而以要通过以下方法实现。

  ?

  1

  2

  3// 把COOKIE保存至cookie.txt

  curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');

  curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

  先把COOKIE保存文件,调用的时候还得读取文件,这样意味着两次的IO操作,效率如何,不用说大家都清楚了。

  那么有没有办法可以绕过写读文件呢?不卖关子,直接上代码:

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18// 初始化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("rnrn", $content);

  // 解析COOKIE

  preg_match("/set-cookie:([^rn]*)/i", $header, $matches);

  // 后面用CURL提交的时候可以直接使用

  // curl_setopt($ch, CURLOPT_COOKIE, $cookie);

  $cookie = $matches[1];

  希望本文所述对大家的php程序设计有所帮助。

时间: 2024-12-13 09:52:46

php使用CURL不依赖COOKIEJAR获取COOKIE的方法的相关文章

php使用CURL不依赖COOKIEJAR获取COOKIE的方法_php技巧

本文实例讲述了php使用CURL不依赖COOKIEJAR获取COOKIE的方法.分享给大家供大家参考.具体分析如下: PHP中CURL类是一个非常牛逼的工具类,具体怎么牛逼就不啰嗦了. 对于COOKIE,CURL类也有很不错的支持,但不够灵活,并未能通过现成的方法以变量的方法获取到,而以要通过以下方法实现. // 把COOKIE保存至cookie.txt curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); curl_setopt($ch, CU

javascript设置和获取cookie的方法实例详解_javascript技巧

本文实例讲述了javascript设置和获取cookie的方法.分享给大家供大家参考,具体如下: 1. 设置cookie function setCookie(cookieName,cookieValue,cookieExpires,cookiePath) { cookieValue = escape(cookieValue);//编码latin-1 if(cookieExpires=="") { var nowDate = new Date(); nowDate.setMonth(n

初学者的忧伤-js创建cookie与获取cookie

问题描述 js创建cookie与获取cookie 我在js中写了创建和获取cookie的方法,并且调用了setCookie("name","haha"),那么别人在远程连接我电脑时候会不会将此cookie存入他的浏览器中. 解决方案 JS获取Cookiejs获取cookiejs+cookie 解决方案二: 如果你是写在页面中,别人访问你的页面的时候你写的cookie就会存到他的浏览器里.

asp.net http 获取 cookie

asp教程.net http 获取 cookie cookie,有时也用其复数形式cookies,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密).定义于rfc2109(已废弃),最新取代的规范是rfc2965.   1 using system;   2 using system.collections.generic;   3 using system.text;   4 using system.net;   5 using system.io

JS设置获取cookies的方法

 这篇文章主要介绍了JS设置获取cookies的方法,有需要的朋友可以参考一下 结合JavaScript权威指南,加上项目开发时在网上搜集的资料,整理了两种设置和获取cookie的方法.  代码如下: <script>   //设置cookie  方法一 function setCookie(name,value){  var exp = new Date();  exp.setTime(exp.getTime() + 1*60*60*1000);//有效期1小时  document.cook

JS设置获取cookies的方法_javascript技巧

结合JavaScript权威指南,加上项目开发时在网上搜集的资料,整理了两种设置和获取cookie的方法. 复制代码 代码如下: <script> //设置cookie  方法一function setCookie(name,value){ var exp = new Date(); exp.setTime(exp.getTime() + 1*60*60*1000);//有效期1小时 document.cookie = name + "="+ escape (value)

curl不使用文件存取cookie php使用curl获取cookie示例

 这篇文章主要介绍了curl不使用文件存取cookie的示例,不使用COOKIEJAR和COOKIEFILE存取COOKIE,大家参考使用吧   代码如下: /*-----保存COOKIE-----*/ $url = 'www.xxx.com'; //url地址 $post = "id=user&pwd=123456"; //POST数据 $ch = curl_init($url); //初始化 curl_setopt($ch,CURLOPT_HEADER,1); //将头文件

curl不使用文件存取cookie php使用curl获取cookie示例_php实例

复制代码 代码如下: /*-----保存COOKIE-----*/$url = 'www.xxx.com'; //url地址$post = "id=user&pwd=123456"; //POST数据$ch = curl_init($url); //初始化curl_setopt($ch,CURLOPT_HEADER,1); //将头文件的信息作为数据流输出curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //返回获取的输出文本流curl_se

php 从Header中获取cookie

/*-----保存COOKIE-----*/ $url = 'www.xxx.com'; //url地址 $post = "id=user&pwd=123456"; //POST数据 $ch = curl_init($url); //初始化 curl_setopt($ch,CURLOPT_HEADER,1); //将头文件的信息作为数据流输出 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //返回获取的输出文本流 curl_setopt(