2015-01-11 2 views
5

Я пытаюсь сделать много запросов на свой сайт, используя прокси и заголовки на PHP, и захватить прокси строку за строкой из текстового файла для использования в файле_get_contents, однако у меня есть 3 прокси в текстовый файл (по одному на строку), а скрипт использует только один, а затем заканчивается. (Я уверен, выполнение его из командной строки)Очередной цикл только циклов

<?php 
$proxies = explode("\r\n", file_get_contents("proxies.txt")); 
foreach($proxies as $cpr0xy) { 
$aContext = array(
    'http' => array(
     'proxy' => "tcp://$cpr0xy", 
     'request_fulluri' => true, 
     'method'=>"GET", 
     'header'=>"Accept-language: en\r\n" . 
     "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36\r\n" 
    ),); 
$rqcon = stream_context_create($aContext); 
$destc = file_get_contents("http://domain.com/file.php", False, $rqcon); 
echo $destc; 
} ?> 

Сейчас его только с помощью первого прокси и правильно возвращая значение, однако затем сценарий останавливается. Моя цель состоит в том, чтобы он бесконечно делать запросы, пока он не исчерпает прокси в proxies.txt

+1

Try: '$ прокси = взрываются (PHP_EOL, file_get_contents (" прокси. txt "));' это делает трюк для вас? Также сделайте 'print_r ($ proxies);' – Rizier123

+0

Вы проверили, что '$ proxies' имеет 3 элемента? –

+0

Возможный дубликат [Как читать файл по строкам в php] (http://stackoverflow.com/questions/13246597/how-to-read-a-file-line-by-line-in-php) –

ответ

3

Это должно работать для вас:

$proxies = explode(PHP_EOL, file_get_contents("proxies.txt")); 
Смежные вопросы