Проверка Url на работоспособность

  • Автор темы Beni
  • Дата начала
B

Beni

#1
Как мне проверить URL на работоспособность, т.е. битая ссылка или нет...
Или есть скрипт уже такой??? :(
 
M

Magistr

#2
делаешь так :
[codebox]$handle = fopen("http://codeby.net/", "rb");
$contents = '';
while (!feof($handle)) {
$contents .= fread($handle, 8192);
}
fclose($handle);
if(strlen($contents)>10000){//наверно где-то около 10000
echo 'Сылка рабочая';
}
exit;[/codebox]
 
M

MainVoid

#3
Можно еще использовать CURL и смотреть какой заголовок тебе отдала страница:

Код:
<?php
$url = 'http://yandex.net/ad';
// Инициализируем curl
$ch = curl_init();
// Задаем URL
curl_setopt($ch, CURLOPT_URL, $url);
// Формируем заголовок
curl_setopt($ch, CURLOPT_HEADER, 1);
// Говорим, что возвращать сам контент нам не нужно
curl_setopt($ch, CURLOPT_NOBODY, 1);
// Вернуть данные передачи
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Записать данные в переменную
$res = curl_exec($ch);
curl_close($ch);
echo '<pre>'; print_r($res); echo '</pre>';

if (strstr($res, 'HTTP/1.1 200 OK')) echo 'Рабочая';
else echo 'Не рабочая';
?>