首頁 >後端開發 >php教程 >如何使用正規表示式從 PHP cURL 回應中提取 Cookie?

如何使用正規表示式從 PHP cURL 回應中提取 Cookie?

Linda Hamilton
Linda Hamilton原創
2024-12-26 01:39:09352瀏覽

How to Extract Cookies from a PHP cURL Response Using Regular Expressions?

從PHP cURL 回應中擷取Cookie

擷取嵌入在HTTP 標頭中的cookie 對於解析非標準通訊協定的回應至關重要。為了簡化此任務,避免不必要的文件寫入操作,並可能節省充足的時間,請考慮使用PHP 的cURL 擴充功能的以下解決方案:

// Initialize cURL
$ch = curl_init('http://www.google.com/');

// Enable response caching and header retrieval
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);

// Execute cURL request
$result = curl_exec($ch);

// Extract cookies from header using regular expression (multi-cookie support)
preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $result, $matches);
$cookies = array();
foreach($matches[1] as $item) {
    parse_str($item, $cookie);
    $cookies = array_merge($cookies, $cookie);
}

// Display the extracted cookies as an array
var_dump($cookies);

此解決方案使用正規表示式有效地從cURL 回應中提取cookie 並儲存它們在關聯數組中。透過利用 PHP 內建的 cookie 處理功能,您可以避免寫入檔案並簡化從自訂協定解析 cookie 的過程。

以上是如何使用正規表示式從 PHP cURL 回應中提取 Cookie?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn