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保存用户登录的用户名实例
本文实例讲述了php使用cookie保存用户登录的用户名的方法.分享给大家供大家参考.具体实现方法如下: 用户登录文件:login.php 复制代码 代码如下: <html> <head> <title>用户登录</title> </head> <body> <?php function getCookieUsername(){ if(empty($_COOKIE['username'])){ return "&
-
php使用cookie实现记住登录状态
要实现记住密码自动登录的功能我们大多数据都是利用了客户端的cookies来实现,我们利用php也不例外,有需要的朋友可以参考一下. php制作记住密码自动登录的解决思路,其实也就是对session,cookies的操作 一.检查用户是否登录 复制代码 代码如下: //检查用户是否登录 function checklogin(){ if(empty($_SESSION['user_info'])){ //检查一下session是不是为空 if(empty($_COOK
-
详解PHP中cookie和session的区别及cookie和session用法小结
具体来说 cookie 是保存在"客户端"的,而session是保存在"服务端"的 cookie 是通过扩展http协议实现的 cookie 主要包括 :名字,值,过期时间,路径和域: 如果cookie不设置生命周期,则以浏览器关闭而关闭,这种cookie一般存储在内存而不是硬盘上.若设置了生命周期则相反,不随浏览器的关闭而消失,这些cookie仍然有效直到超过设定的过 期 时间. session 一种类似散列表的形式保存信息, 当程序需要为某个客户端的请求创建一个
-
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显示用户上次访问网站日期的方法
本文实例讲述了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加密的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php class Cookie { /** * 解密已经加密了的cookie * * @param string $encryptedText * @return string */ private static function _decrypt($encryptedText) { $ke
-
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实现记住用户名和密码实现代码
<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=&
-
thinkphp3.x中cookie方法的用法分析
本文实例分析了thinkphp3.x中cookie方法的用法.分享给大家供大家参考,具体如下: 一.cookie函数也是一个多元化操作函数,完成cookie的设置.获取和删除操作. Cookie 用于Cookie 设置.获取.删除操作: 用法: cookie($name, $value='', $option=null) 参数: name(必须):要操作的cookie变量 value(可选):要设置的cookie值 option(可选):传入的cookie设置参数,默认为空 返回值 见详(根据具
-
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
随机推荐
- 解javascript 混淆加密收藏
- mysql数据库备份及恢复命令 mysqldump,source的用法
- 2分法分页存储过程脚本实例
- js实现数组转换成json
- Centos系统中彻底删除Mysql数据库步骤
- 启用windows默认的防火墙需要注意的地方
- 用批处理设置IP安全策略的代码
- ASP.Net不执行问题一解
- ASP.net Substitution 页面缓存而部分不缓存的实现方法
- Android App开发中自定义View和ViewGroup的实例教程
- MySQL笔记之数据备份与还原的使用详解
- jQuery文字轮播特效
- JavaMail入门教程之创建邮件(2)
- 从零学习node.js之文件操作(三)
- 完美实现js拖拽效果 return false用法详解
- 用html为flash页面添加音乐
- nginx could not build the server_names_hash 解决方法
- 详解spring boot集成ehcache 2.x 用于hibernate二级缓存
- 一个PHP实现的轻量级简单爬虫
- ASP.NET 2.0中预设的cookie
