Check URL Existence with PHP

  • Avinash
  • 1
  • May 13, 2013
  • Web Development

In this article we will see how to check the existence of the URL using PHP. Here existence means we are checking content which we are requesting is available on server or not.

We can check the existence of URL in two ways using PHP. First one is the get_header function and second one is CURL.

PHP URL Existence

Basically we are checking HTTP header of the URL and based on that we can determine existence of the url. 200 Code stands for OK header and 404 stands for Not Found.
Let’s get into both of the methods.

get_headers Function

Using this get_headers function we can get the HTTP header information of the given URL.

$url = "http://www.domain.com/demo.jpg"; $headers = @get_headers($url); if(strpos($headers[0],'404') === false) { echo "URL Exists"; } else { echo "URL Not Exists"; }
$url = "http://www.domain.com/demo.jpg";
$headers = @get_headers($url);
if(strpos($headers[0],'404') === false)
{
  echo "URL Exists";
}
else
{
  echo "URL Not Exists";
}

Note: If you set second parameter of the get_headers() to true then you will get result in associative array. Just try for it.

cURL

$url = "http://www.domain.com/demo.jpg"; $curl = curl_init($url); curl_setopt($curl, CURLOPT_NOBODY, true); $result = curl_exec($curl); if ($result !== false) { $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($statusCode == 404) { echo "URL Not Exists" } else { echo "URL Exists"; } } else { echo "URL not Exists"; }
$url = "http://www.domain.com/demo.jpg";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
$result = curl_exec($curl);
if ($result !== false)
{
  $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);  
  if ($statusCode == 404)
  {
    echo "URL Not Exists"
  }
  else
  {
     echo "URL Exists";
  }
}
else
{
  echo "URL not Exists";
}

Note: We have used CURLOPT_NOBODY to just check for the connection and not to fetch whole body.

So we are done with the checking the existence of the URL with PHP, share your views/comments/suggestions.

Related Posts

Written by Avinash

Avinash Zala is leading various projects which deals with the various technology involved with the web. A combination of perfect technical and management skills. Avinash would like to chat with you and convert your imagination into the working system. You can get in touch with him on Facebook and Twitter.

View all posts by:

  • kkatusic

    Nice tips