在PHP的curl调用中使用cookie

时间:2014-04-11 10:04:47

标签: php cookies curl

我需要从外部网站获取一些数据。为此,我需要加载一个创建一些cookie的网站,并提供一个简单的数学计算来生成新的链接。这部分很简单:

$cr = curl_init($url);
curl_setopt($cr, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cr, CURLOPT_COOKIEJAR, 'cookie.txt');
$html = curl_exec($cr);
curl_close($cr);

在这些电话之后,我将cookie存储在cookie.txt中:

# Netscape HTTP Cookie File
# http://curl.haxx.se/docs/http-cookies.html
# This file was generated by libcurl! Edit at your own risk.

domain   FALSE   /       FALSE   0       PHPSESSID       o89t753egbp9pq9084n38eg2m1

现在,问题是:如何在我下次调用其他网站(在同一领域)时加载此cookie以使用它?

2 个答案:

答案 0 :(得分:2)

您可以使用

curl_setopt($cr, CURLOPT_COOKIEFILE, 'cookie.txt'); 
curl_setopt($cr, CURLOPT_COOKIEJAR, 'cookie.txt'); 

在两个请求中。

答案 1 :(得分:0)

一个cookie是一个标题,然后你可以简单地使用命令setcookie($ name,$ value),或者如果你愿意,可以使用标题php调用,使用Cookie作为标题名称。 请记住,您不必在setcookie命令之前将输出发送到客户端。

您必须阅读文件并将其拆分。