terkin
Мой дом здесь!
- Регистрация
- 9 Дек 2006
- Сообщения
- 513
- Реакции
- 200
- Автор темы
- #1
Мультипоточный чекер ссылок на PHP и Curl, вроде как всё правильно сделано, но беспокоит одна вещ, часто где код ответа должен быть 200 мне возвращает 0 или 503, я так понимаю - это из-за того что скрипт шлёт слишком быстро запросы серверу. Но вот в руководстве по курлу я так и не смог найти как выставить задержку при многопоточных запросах, поэтому прошу помощи, кто сможет доделать
PHP:
<?php
// $ma - массив с нашими урлами с http://
$mh = curl_multi_init();
$handles = array();
for($i=0;$i<count($ma);$i++)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $ma[$i]);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_multi_add_handle($mh,$ch);
$handles[] = $ch;
}
$running=null;
do
{
curl_multi_exec($mh,$running);
} while ($running > 0);
for($i=0;$i<count($handles);$i++)
{
$output.=$ma[$i].' '.curl_getinfo($handles[$i], CURLINFO_HTTP_CODE).'<br />';
curl_multi_remove_handle($mh,$handles[$i]);
}
echo $output;
curl_multi_close($mh);
?>