在PHP CURL中设置cookie

时间:2015-01-15 06:47:13

标签: php curl cookies

我对php curl概念真的很陌生,任何人都可以向我展示如何使用 php curl

在浏览器中设置cookie的简单示例

这是我的代码无效......

$ch = curl_init('http://localhost/setc.php?userid=123&panelid=1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// get headers too with this line
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_exec($ch);
curl_close($ch);

但是当我拿一个这样的var_dump时会被打印出来,非常困惑请帮忙

array (size=1)
  'userid' => string '1:123' (length=8)

如果你混淆了请....你可以简单地忽略我上面的编码,让我知道如何使用php curl设置一个简单的cookie

3 个答案:

答案 0 :(得分:15)

我不清楚您期望使用Cookie发生什么。但是,您可以尝试这样做:

$ch = curl_init('http://localhost/setc.php?userid=123&panelid=1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// get headers too with this line
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, '/tmp/cookies.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, '/tmp/cookies.txt');
curl_setopt($ch, CURLOPT_COOKIE, 'cookiename=cookievalue');
curl_exec($ch);
curl_close($ch);

答案 1 :(得分:3)

试试这个:

curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');

这将自动创建一个cookies.txt

答案 2 :(得分:2)

Php Curl允许您直接设置cookie标头,使用:

curl_setopt($curlHandle,CURLOPT_COOKIE, $cookieString);

其中 $ cookieStrin g保存以分号分隔的key = value对的cookie数据。

请参考这个问题: PHP Curl and setcookie problem

请务必彻底查看http://php.net/manual/en/function.curl-setopt.php

相关问题