php使用CURL不依赖COOKIEJAR获取COOKIE的方法
本文实例讲述了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程序设计有所帮助。
相关推荐
-
详解PHP中cookie和session的区别及cookie和session用法小结
具体来说 cookie 是保存在"客户端"的,而session是保存在"服务端"的 cookie 是通过扩展http协议实现的 cookie 主要包括 :名字,值,过期时间,路径和域: 如果cookie不设置生命周期,则以浏览器关闭而关闭,这种cookie一般存储在内存而不是硬盘上.若设置了生命周期则相反,不随浏览器的关闭而消失,这些cookie仍然有效直到超过设定的过 期 时间. session 一种类似散列表的形式保存信息, 当程序需要为某个客户端的请求创建一个
-
php通过curl添加cookie伪造登陆抓取数据的方法
本文实例讲述了php通过curl添加cookie伪造登陆抓取数据的方法.分享给大家供大家参考,具体如下: 有的网页必须登陆才能看到,这个时候想要抓取信息必须在header里面传递cookie值才能获取 1.首先登陆网站,打开firebug就能看到对应的cookie把这些cookie拷贝出来就能使用了 2. <?php header("Content-type:text/html;Charset=utf8"); $ch =curl_init(); curl_setopt($ch,C
-
php使用cookie实现记住用户名和密码实现代码
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <form id="form1" name="form1" method="post" action="check_remember.php"> <table width="300" border=&
-
php使用cookie实现记住登录状态
要实现记住密码自动登录的功能我们大多数据都是利用了客户端的cookies来实现,我们利用php也不例外,有需要的朋友可以参考一下. php制作记住密码自动登录的解决思路,其实也就是对session,cookies的操作 一.检查用户是否登录 复制代码 代码如下: //检查用户是否登录 function checklogin(){ if(empty($_SESSION['user_info'])){ //检查一下session是不是为空 if(empty($_COOK
-
php实现cookie加密的方法
本文实例讲述了php实现cookie加密的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php class Cookie { /** * 解密已经加密了的cookie * * @param string $encryptedText * @return string */ private static function _decrypt($encryptedText) { $ke
-
thinkphp3.x中cookie方法的用法分析
本文实例分析了thinkphp3.x中cookie方法的用法.分享给大家供大家参考,具体如下: 一.cookie函数也是一个多元化操作函数,完成cookie的设置.获取和删除操作. Cookie 用于Cookie 设置.获取.删除操作: 用法: cookie($name, $value='', $option=null) 参数: name(必须):要操作的cookie变量 value(可选):要设置的cookie值 option(可选):传入的cookie设置参数,默认为空 返回值 见详(根据具
-
PHP基于cookie与session统计网站访问量并输出显示的方法
本文实例讲述了PHP基于cookie与session统计网站访问量并输出显示的方法.分享给大家供大家参考,具体如下: <?php $f_open = fopen("count.txt","r+"); //打开指定的文件 $count = fgets($f_open); //读取文件中的数据 if(empty($_COOKIE['cookie_name'])){ //判断COOKIE的是否存在 setcookie("cookie_name",
-
PHP利用Cookie设置用户30分钟未操作自动退出功能
登陆控制器需要做的登陆成功把用户ID等信息存入cookie: $this->systemSetKey(array('name'=>$admin_info['admin_name'], 'id'=>$admin_info['admin_id'],'gid'=>$admin_info['admin_gid'],'sp'=>$admin_info['admin_is_super']));//登陆成功之后做得事情 父类中的 systemSetKey 方法: /** * 系统后台 会员
-
php使用cookie显示用户上次访问网站日期的方法
本文实例讲述了php使用cookie显示用户上次访问网站日期的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php if(!empty($_COOKIE['lastvisit'])){//先判断,是否存在cookie echo "您上次访问时间是:".$_COOKIE['lastvisit']; setCookie("lastvisit",date("Y-m-d H:i:s"),time()+3600*24*
-
php使用cookie保存用户登录的用户名实例
本文实例讲述了php使用cookie保存用户登录的用户名的方法.分享给大家供大家参考.具体实现方法如下: 用户登录文件:login.php 复制代码 代码如下: <html> <head> <title>用户登录</title> </head> <body> <?php function getCookieUsername(){ if(empty($_COOKIE['username'])){ return "&
随机推荐
- 除捕获组的语法外,其它的(?...)语法都不是捕获组的验证
- CodeIgniter视图使用注意事项
- jQuery快速实现商品数量加减的方法
- SSH框架网上商城项目第4战之EasyUI菜单的实现
- Perl语法中Perl运算符用法指南
- 解决ASP.NET中"/"应用程序中的服务器错误的方法
- ASP.net 页面被关闭后,服务器端是否仍然执行中?
- python中偏函数partial用法实例分析
- JS解决iframe之间通信和自适应高度的问题
- 计时器的time_t和clock_t 的两种实现方法(推荐)
- jQuery on()方法示例及jquery on()方法的优点
- EasyUI的TreeGrid的过滤功能的解决思路
- C#中无边框窗体移动的简单实例
- Eclipse 出现Failed to load JavaHL Library解决方法
- BarCode条形码基于C# GDI+ 的实现方法详解
- python编程培训 python培训靠谱吗
- Objective-C和Swift的转换速查手册(推荐)
- PHP匿名函数(闭包函数)详解
- 判断js数据类型的函数实例详解
- 一篇文章弄懂kotlin的扩展方法
