利用 cURL 确定网站状态在努力优化性能时提出了挑战。虽然提供的代码片段达到了其目的,但下载整个网页会遇到性能限制。
为了提高性能,仅检索必要的信息(即 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中文网其他相关文章!