file_get_contents за прокси (используя список прокси) - PullRequest
2 голосов
/ 25 января 2012

Я использую это решение:

$aContext = array(
    'http' => array(
        'proxy' => 'tcp://192.168.0.2:3128',
        'request_fulluri' => true,
    ),
);
$cxContext = stream_context_create($aContext);

$sFile = file_get_contents("http://www.google.com", False, $cxContext);

echo $sFile;

Как изменить скрипт так, чтобы вместо прокси использовался список прокси в формате:

...
192.168.0.2:3128
193.123.8.2:3128
194.115.10.2:80
195.178.0.2:80
...

1 Ответ

2 голосов
/ 25 января 2012

Ну, у вас уже есть большая часть кода, вот что я бы сделал:

<?php
    $proxies = array( '192.168.0.2:3128', '192.168.8.2:3128', '192.168.10.2:80' );

    // Pick a random proxy:
    $proxy_to_use = $proxies[ rand( 0, count( $proxies ) -1 ];

    $aContext = array(
      'http' => array(
        'proxy' => 'tcp://' . $proxy_to_use,
        'request_fulluri' => true,
      ),
    );

    $cxContext = stream_context_create($aContext);
    $sFile = file_get_contents("http://www.google.com", False, $cxContext);
    echo $sFile;
?>

Это то, что вы имели в виду?

...