cURL を使用して Web サイトのステータスを確認することは、パフォーマンスの最適化を目指すときに課題となります。提供されたコード スニペットはその目的を果たしていますが、Web ページ全体をダウンロードすることによりパフォーマンスの制限に遭遇します。
パフォーマンスを向上させるには、必要な情報、つまり HTTP のみを取得することが重要です。応答コード。これは、次の方法で実現できます。
<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>
URL ステータス コードの取得に関する包括的な詳細については、次を参照してください。
すべてをまとめると、最適化されたコードは次のようになります。
<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>
これらの手法を適用すると、HTTP コード取得プロセスのパフォーマンスが大幅に向上します。
以上がcURL を使用して PHP での HTTP コード取得を最適化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。