How to Optimize HTTP Code Retrieval in PHP with cURL?

Barbara Streisand
Release: 2024-10-30 07:00:27
Original
848 people have browsed it

How to Optimize HTTP Code Retrieval in PHP with cURL?

Achieving Optimal Performance for HTTP Code Retrieval in PHP with cURL

Utilizing cURL to ascertain website status poses a challenge when striving for performance optimization. While the provided code snippet serves its purpose, it encounters performance limitations by downloading the entire web page.

Streamlined Approach

To enhance performance, it's crucial to retrieve only the necessary information, namely the HTTP response code. This can be achieved by:

  • Verifying URL validity before proceeding.
  • Configuring cURL to fetch headers only, omitting the page content.
<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>
Copy after login

Detailed Execution

For comprehensive details on obtaining the URL status code, refer to:

  • How can I check if a URL exists via PHP?

Implementation

Putting it all together, the optimized code becomes:

<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>
Copy after login

By applying these techniques, the performance of your HTTP code retrieval process will see significant improvements.

The above is the detailed content of How to Optimize HTTP Code Retrieval in PHP with cURL?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!