Maison >développement back-end >tutoriel php >Comment extraire les cookies d'une réponse PHP cURL à l'aide d'expressions régulières ?

Comment extraire les cookies d'une réponse PHP cURL à l'aide d'expressions régulières ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-26 01:39:09360parcourir

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

Extraire les cookies d'une réponse PHP cURL

La récupération des cookies intégrés dans les en-têtes HTTP peut être essentielle pour analyser les réponses des protocoles de communication non standard. Pour simplifier cette tâche, éviter les opérations d'écriture de fichiers inutiles et potentiellement gagner beaucoup de temps, envisagez la solution suivante utilisant l'extension cURL de 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);

Cette solution extrait efficacement les cookies d'une réponse cURL à l'aide d'expressions régulières et les stocke. dans un tableau associatif. En tirant parti des capacités intégrées de gestion des cookies de PHP, vous pouvez éviter d'écrire dans un fichier et simplifier le processus d'analyse des cookies à partir de protocoles personnalisés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn