Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengekstrak Kuki daripada Respons PHP cURL Menggunakan Ungkapan Biasa?

Bagaimana untuk Mengekstrak Kuki daripada Respons PHP cURL Menggunakan Ungkapan Biasa?

Linda Hamilton
Linda Hamiltonasal
2024-12-26 01:39:09352semak imbas

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

Mengekstrak Kuki daripada Respons cURL PHP

Mendapatkan semula kuki yang dibenamkan dalam pengepala HTTP boleh menjadi penting untuk menghuraikan respons daripada protokol komunikasi bukan standard. Untuk memudahkan tugas ini, elakkan operasi menulis fail yang tidak diperlukan dan berpotensi menjimatkan masa yang mencukupi, pertimbangkan penyelesaian berikut menggunakan sambungan cURL PHP:

// 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);

Penyelesaian ini berkesan mengekstrak kuki daripada respons cURL menggunakan ungkapan biasa dan menyimpannya dalam tatasusunan bersekutu. Dengan memanfaatkan keupayaan pengendalian kuki terbina dalam PHP, anda boleh mengelak daripada menulis pada fail dan memudahkan proses menghuraikan kuki daripada protokol tersuai.

Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Kuki daripada Respons PHP cURL Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn