L'utilisation de cURL pour vérifier l'état d'un site Web pose un défi lorsque l'on cherche à optimiser les performances. Bien que l'extrait de code fourni remplisse son objectif, il rencontre des limitations de performances en téléchargeant l'intégralité de la page Web.
Pour améliorer les performances, il est crucial de récupérer uniquement les informations nécessaires, à savoir le HTTP code de réponse. Ceci peut être réalisé en :
<code class="php">if(!$url || !is_string($url) || ! preg_match('/^http(s)?:\/\/[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(\/.*)?$/i', $url)){ return false; } curl_setopt($ch, CURLOPT_HEADER , true); // we want headers curl_setopt($ch, CURLOPT_NOBODY , true); // we don't need body</code>
Pour des détails complets sur l'obtention du code d'état de l'URL, reportez-vous à :
En mettant le tout ensemble, le code optimisé devient :
<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>
En appliquant ces techniques, les performances de votre processus de récupération de code HTTP connaîtront des améliorations significatives.
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!