加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php中curl获得返回页面的cookie

发布时间:2023-09-05 15:59:54 所属栏目:PHP教程 来源:
导读:php的curl可以模仿用户浏览网页并且获取网页的cookie,获取cookie还有专用的参数如CURLOPT_COOKIEJAR 用于保存 cookie 到文件了,下面一起来看几个例子吧.

curl可以获取返回页面设置的cookie,原理跟get_headers是一
php的curl可以模仿用户浏览网页并且获取网页的cookie,获取cookie还有专用的参数如CURLOPT_COOKIEJAR 用于保存 cookie 到文件了,下面一起来看几个例子吧.

curl可以获取返回页面设置的cookie,原理跟get_headers是一样的,在返回的头信息中将"Set-Cookie:"的内容取出来即可.

测试页面/设置cookie的页面,test.php代码如下:

<?php 
setcookie('test', 'sssss'); 
setcookie('xxx', 'www'); 
 
//获取cookie的脚本 
 
<?php 
$url = 'http://localhost/test.php'; 
$ch = curl_init($url); //初始化 
curl_setopt($ch,CURLOPT_HEADER,1); //将头文件的信息作为数据流输出 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //返回获取的输出文本流 
curl_setopt($ch, CURLOPT_HEADER, 1); 
$string = curl_exec($ch); 
preg_match_all('/Set-Cookie:stest=(.*)/i', $string, $results); 
var_dump($results); 
?> 
获取cooke并保存到文件,代码如下:

$url = "http://www.Cuoxin.com/"; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar); 
$content = curl_exec($ch); 
curl_close($ch); 
curl参数介绍

CURLOPT_COOKIEJAR 用于保存 cookie 到文件

CURLOPT_COOKIEFILE 用于将保存的 cookie 文件发送出去

CURLOPT_COOKIE 用于发送 cookie 变量

所谓 在会话结束后就过期了,是因为浏览器不保存没有过期设定的 cookie 变量,所以关闭浏览器后再次请求时就没有 cookie 发送出去.

curl 处理中,如果是一次做完,只需 CURLOPT_COOKIEJAR 就可以.

若要分段处理则先 CURLOPT_COOKIEJAR,后 CURLOPT_COOKIEFILE,发送 cookie 文件内容的段,不要 CURLOPT_COOKIEJAR,以避免新的 cookie 变量的影响.

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章