Как извлечь параметры headers c multi curl?

207
24 декабря 2019, 01:20
$mh = curl_multi_init();     
    $connectionArray = array();
    foreach($urls as $key => $url){
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
        curl_multi_add_handle($mh, $ch);
        $connectionArray[$key] = $ch;
    }
    $running = null;
    do {
        curl_multi_exec($mh, $running);
    }   while($running > 0);
    foreach($connectionArray as $key => $ch) {
        curl_multi_remove_handle($mh, $ch);
    }  

Код показывает полученный header(хотя нигде нет echo, print...).
Как мне из него извлечь данные location?

Answer 1

Нашел ответ, может кому пригодится:

$mh = curl_multi_init();     
    $connectionArray = array();
    foreach($urls as $key => $url){
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt($ch, CURLOPT_NOBODY, 1);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
        curl_multi_add_handle($mh, $ch);
        $connectionArray[$key] = $ch;
    }
    $running = null;
    do {
        curl_multi_exec($mh, $running);
    }   while($running > 0);
    foreach($connectionArray as $key => $ch) {
        $content = curl_multi_getcontent($ch);
        $curl_info = curl_getinfo($ch);
        $headers = substr($content, 0, $curl_info["header_size"]);
        preg_match("!\r\n(?:Location|URI): *(.*?) *\r\n!", $headers, $matches);
        $url = $matches[1];
        curl_multi_remove_handle($mh, $ch);
    }
    curl_multi_close($mh);
READ ALSO
Подсчет сессий на всем сайте

Подсчет сессий на всем сайте

Подскажите пожалуйста, есть такой код который подсчитывает сессии на сайтеВ данный момент считает количество открытых сессий на каждой...

197
SQL Select первая буква второго слова

SQL Select первая буква второго слова

Прошу помощи , есть выборка результатирующая которая выводит поле fio

194
Could not instantiate mail function

Could not instantiate mail function

Когда отправил данные на почта, но такой ошибка бываетСайт в CodeIgniterе

176
Как оправить форму методом POST

Как оправить форму методом POST

У меня есть форма, вот она:

173