Maison > développement back-end > tutoriel php > Comment récupérer efficacement les en-têtes et le corps d'une réponse PHP cURL ?

Comment récupérer efficacement les en-têtes et le corps d'une réponse PHP cURL ?

DDD
Libérer: 2024-12-29 05:51:08
original
822 Les gens l'ont consulté

How to Efficiently Retrieve Both Headers and Body from a PHP cURL Response?

Récupération des en-têtes et du corps de réponse dans PHP cURL

Lors de l'utilisation de PHP cURL, il est possible de récupérer à la fois les en-têtes de réponse et le corps dans un demande unique. Une approche courante consiste à définir CURLOPT_HEADER sur true, ce qui renvoie le corps ainsi que les en-têtes. Cependant, l'analyse de cette réponse combinée pour extraire le corps nécessite un traitement supplémentaire.

Une méthode alternative suggérée par les commentaires de la documentation PHP propose une approche plus structurée :

Code :

$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
// ...

$response = curl_exec($ch);

// Get header and body after execution:
$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$header = substr($response, 0, $header_size);
$body = substr($response, $header_size);
Copier après la connexion

Cette approche offre un accès plus propre aux composants de l'en-tête et du corps du réponse.

Attention :

Il est important de noter que cette méthode peut ne pas être fiable dans tous les scénarios, en particulier lors de l'utilisation de serveurs proxy ou de la gestion de certains types de redirections. Pour une fiabilité améliorée, envisagez la solution alternative de @Geoffrey fournie dans la section commentaires, qui répond à ces cas extrêmes.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal