@Kirill-Gorelov
С ума с IT

Проверка доступности сайта, как проверить несколько?

Всем привет.
Есть скрипт который проверяет доступность сервера.
function isDomainAvailible($domain)
       {
               //проверка на валидность урла
               if(!filter_var($domain, FILTER_VALIDATE_URL))
               {
                       return false;
               }
               //инициализация curl
               $curlInit = curl_init($domain);
               curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);
               curl_setopt($curlInit,CURLOPT_HEADER,true);
               curl_setopt($curlInit,CURLOPT_NOBODY,true);
               curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);
               //получение ответа
               $response = curl_exec($curlInit);
               curl_close($curlInit);
               if ($response) return true;
               return false;
       }
	   ?>

Как сделать так, что бы проверялся не один сайт, а несколько?
Просто копировать этот код, дважды не очень удобно.
  • Вопрос задан
  • 2359 просмотров
Пригласить эксперта
Ответы на вопрос 3
@lnked
Вызывайте функцию сколько угодно раз, можно для удобства в цикле или просто, по порядку:
isDomainAvailible('http://site1.ru');
isDomainAvailible('http://site2.ru');
Ответ написан
Tuborg
@Tuborg
butalex
В функцию передавай несколько доменов.
К примеру есть массив из 2 сайтов array('site1','site2');
Просто в цикле передавай значения массива

<?php
$domain = array('http://butsw.pp.ua/', 'http://google.com/', 'http://gryazniepisyuni.com/');
foreach ($domain as $url) {
    $is = isDomainAvailible($url);
    if ($is == 1) {
        echo "OK! <br>";
    } else {
        echo "ERR!!!<br>";
    }
}

И сам результат
42081562140a43fbb1be35efe0ef8121.PNG
Ответ написан
@entermix
Используйте curl_multi_init:
php.ru/manual/function.curl-multi-init.html
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 23:00
5000 руб./за проект
19 апр. 2024, в 20:43
20000 руб./за проект