Kiểm tra sự tồn tại của URL với PHP

19/02/2014

Là một nhà quản trị website, chắc hẳn là các bạn sẽ cần tính năng kiểm tra sự tồn tại của URL (tức là xem đường link có tồn tại hay đã bị xóa). Việc làm này rất hữu ích, vì nó giúp bạn kiểm tra những link đã bị hỏng, từ đó các bạn có thể chỉnh sửa lại bài viết cho phù hợp, cũng như nhằm tránh bị đánh rớt thứ hạng trong các kết quả tìm kiếm trực tuyến như Google hay Yahoo…

check-url-existence

Trong bài viết ngày hôm nay mình sẽ chia sẻ cho các bạn 2 cách để thực hiện điều này :

Cách 1 : Sử dụng get_headers Function

Bằng cách sử dụng hàm get_headers , chúng ta có thể nhận được thông tin HTTP header được gắn trong 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";
}

Cách 2 : Sử dụng 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";
}

Thế là xong, bây giờ mỗi khi cần kiểm tra link nào không còn tồn tại, thì cứ lấy 2 đoạn code trong bài viết hôm nay ra sử dụng là xong. Nếu các bạn có những đoạn code nào cũng làm điều tương tự thì chia sẻ cho mình và mọi người biết nhé.

Chuyên Mục:

Bài viết được đăng bởi webmaster

Nếu các bạn thấy bài viết hữu ích thì giúp mình Like cái nhé !