Запускаю мультикурл по списку адресов, есть список прокси, добавляю к каждому адресу прокси.
foreach ($urls as $url) {
$chs[] = ($ch = curl_init($url['url']));
$options = [
CURLOPT_RETURNTRANSFER => true, // return web page
CURLOPT_HEADER => false, // don't return headers
CURLOPT_FOLLOWLOCATION => true, // follow redirects
CURLOPT_ENCODING => "", // handle all encodings
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36', // who am i
CURLOPT_AUTOREFERER => true, // set referer on redirect
CURLOPT_CONNECTTIMEOUT => 30, // timeout on connect
CURLOPT_TIMEOUT => 30, // timeout on response
CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
CURLOPT_SSL_VERIFYPEER => false, // Disabled SSL Cert checks
CURLOPT_PROXY => $proxiesArray[$i]
];
curl_setopt_array($ch, $options);
curl_multi_add_handle($mh, $ch);
.....
Затем получаю результаты:
do {
curl_multi_exec($mh, $running);
if ($running != $prev_running) {
$info = curl_multi_info_read($mh);
if (is_array($info) && ($ch = $info['handle'])) {
$content = curl_multi_getcontent($ch);
$result_url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
$results[$result_url] = [
'content' => $content,
'status' => $info['result'],
'status_text' => curl_error($ch)
];
}
$prev_running = $running;
}
} while ($running > 0);
Как мне во втором куске кода узнать какой именно прокси используется для адреса, чтобы, если он он не работает, удалить его?