首页 >后端开发 >php教程 >如何有效地从 PHP cURL 响应中提取 Cookie?

如何有效地从 PHP cURL 响应中提取 Cookie?

Susan Sarandon
Susan Sarandon原创
2024-12-27 16:49:101005浏览

How to Efficiently Extract Cookies from a PHP cURL Response?

从 PHP cURL 响应中检索 Cookie

处理非常规通信协议(例如嵌入 cookie 的响应)时,有效提取 cookie 可能是一个挑战。本文通过提供一个简单的解决方案来解决这个问题,无需写入文件或进行繁琐的解析。

$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Retrieve headers along with the response
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);

// Extract cookies using regular expression
preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $result, $matches);

// Convert cookies to an array
$cookies = array();
foreach ($matches[1] as $item) {
    parse_str($item, $cookie);
    $cookies = array_merge($cookies, $cookie);
}

// Print the collected cookies
var_dump($cookies);

以上是如何有效地从 PHP cURL 响应中提取 Cookie?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn