I'm trying to check proxies using php-curl-class with MultiCurl. The problem is, that I can't set individual proxy for each instance in MultiCurl separately.
The goal is to send a request to $check_url, using each Proxy that was parsed before (in Array). If I get positive answer, write it to the file then.
But, it causing troubles to set an individual proxy for MultiCurl, while setting it with Curl is OK.
Could you, please, tell me where I got a mistake?
My code is below:
/* Multicurl */
$multi_curl = new MultiCurl();
/* Проверка прокси */
$check_url = 'http://httpbin.org/get';
foreach($proxy_result as $key => $val)
{
$multi_curl->beforeSend(function ($instance) use ($proxy_result) {
foreach ($proxy_result as $key => $val) {
$instance->setProxy($val);
$instance->setProxyType(CURLPROXY_SOCKS5);
$instance->setProxyTunnel();
$instance->setConnectTimeout(5);
$instance->setTimeout(10);
$instance->setOpt(CURLOPT_FOLLOWLOCATION, true);
$instance->setOpt(CURLOPT_SSL_VERIFYHOST, false);
$instance->setOpt(CURLOPT_SSL_VERIFYPEER, false);}});
$multi_curl->addGet($check_url);
}
$multi_curl->success(function($instance) {
$ip = ($instance->response->origin);
echo $ip;
});
$multi_curl->start();