Maison  >  Article  >  développement back-end  >  Comment puis-je optimiser le code PHP pour récupérer efficacement les codes HTTP avec CURL ?

Comment puis-je optimiser le code PHP pour récupérer efficacement les codes HTTP avec CURL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-02 02:06:30332parcourir

How Can I Optimise PHP Code to Efficiently Retrieve HTTP Codes with CURL?

Optimisation du code pour la récupération de code HTTP en PHP

Récupérer le code HTTP d'un site Web est une tâche courante dans le développement Web. L'utilisation de CURL fournit une méthode polyvalente pour y parvenir, mais peut parfois se heurter à des problèmes de performances. Ce guide explore les techniques d'optimisation pour améliorer les performances d'un tel code.

L'exemple de code fourni implique l'exécution de CURL avec diverses options pour récupérer et stocker le code HTTP :

<code class="php"><?php
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_TIMEOUT,10);
$output = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

return $httpcode;
?></code>

Cependant, cette approche peut ne pas être optimal en raison du téléchargement de l’intégralité du contenu de la page. Suppression du $output = curl_exec($ch); La ligne peut entraîner zéro code HTTP.

Pour optimiser les performances, suivez les étapes suivantes :

  • Valider l'URL : Assurez-vous que l'URL est valide avant de procéder à la demande pour économiser du temps et des ressources.
  • Récupérer uniquement les en-têtes : Récupérez uniquement les en-têtes en définissant les options CURLOPT_HEADER et CURLOPT_NOBODY sur true. Cela évite de télécharger le contenu du corps.
  • Utilisez d'autres méthodes : Reportez-vous au guide lié pour plus de détails sur les approches alternatives pour vérifier l'état de l'URL et gérer les redirections.

En incorporant ces techniques d'optimisation, le code peut être réécrit comme suit :

<code class="php">$url = 'http://www.example.com';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, true);    // we want headers
curl_setopt($ch, CURLOPT_NOBODY, true);    // we don't need body
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT,10);
$output = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

echo 'HTTP code: ' . $httpcode;</code>

Ces optimisations améliorent considérablement les performances du code, le rendant plus efficace pour récupérer le code HTTP d'un site Web à l'aide de CURL.

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