I want to use proxy in my php curlopt via array and one proxy will be used five times before proceeding to the next proxy.
The only thing I know based on Google searches over two pages are:
$fp = @fopen($filename, 'r');
// Add each line to an array
if ($fp) {
$array = explode("\n", fread($fp, filesize($filename)));
}
But when I echo the array it shows all proxies in the textfile and not just one which results to not reading in the curl:
curl_setopt($ch, CURLOPT_PROXY, $poxySocks4);
Is there any way to use one proxy five times then proceed to another?
Here is the full code:
function binsforeveryoneproxys()
{
$fileName='joestar.txt'; //textfile
$proxies = file($fileName, FILE_IGNORE_NEW_LINES);
foreach ( $proxies as $proxy ) {
echo $proxy;
return $proxies;
}
}
$saitama= binsforeveryoneproxys();
curl_setopt($ch, CURLOPT_PROXY, $saitama);
curl_setopt($ch, CURLOPT_URL, '');
curl_setopt($ch, CURLOPT_USERAGENT, getcwd().'/cookie.txt');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'accept: application/json',
'content-type: application/x-www-form-urlencoded',
'origin: ',
'referer: '
));
//////////////////////////// POSTFIELD 1 //////////////////////////
curl_setopt($ch, CURLOPT_POSTFIELDS, '');
$result = curl_exec($ch);
You can use file()
which will read in the list of lines in the file into separate lines of the array. This saves having to open/read/split the file.
Then use a foreach()
over this list with a for()
loop to do the repeating part...
$proxies = file( $fileName, FILE_IGNORE_NEW_LINES);
foreach ( $proxies as $proxy ) {
echo $proxy.PHP_EOL;
for ( $i = 0; $i < 5; $i++ ) {
// .....
}
}