цикл foreach с curl multi exec - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь выяснить, как отправить несколько запросов curl с помощью curl multi exec внутри цикла foreach. Я написал часть кода, но он не показывает мне извлекаемые данные, я не понимаю,

Спасибо за помощь заранее

Вот мой код:

<?php $multiCurl = array();  

 $result = array();

 $mh = curl_multi_init();

 foreach ($members as $mem => $id) {
$c = $mem["ta"];
$urll = "https://api.abcd.com/" . urlencode($c);
$tokenq = "abcd";
$multi[$mem] = curl_init();
 $headr = array();
$headr[] = "Accept: application/json";
 $headr[] = "Authorization: Bearer ".$tokenq;
 curl_setopt($multi[$mem], CURLOPT_HTTPHEADER,$headr);
 curl_setopt($multi[$mem], CURLOPT_SSL_VERIFYHOST, false);
  curl_setopt($multi[$mem], CURLOPT_SSL_VERIFYPEER, false);
 curl_setopt($multi[$mem], CURLOPT_RETURNTRANSFER,1);
 curl_multi_add_handle($mh, $multi[$mem]);
  }
 $index=null;
  do {
 curl_multi_exec($mh,$index);
 } while($index > 0);
 // get content and remove handles
 foreach($multi as $kp => $ch6) {
 $result[$kp] = curl_multi_getcontent($ch6);
  curl_multi_remove_handle($mh, $ch6);
  }
  // close
  curl_multi_close($mh);

С другой стороны, когда я использую единственный запрос curl_init, он возвращается с данными, но не работает с curl multi exec, он возвращается с этой вещью.

Array ([0] => [1] => [2] => [3] => [4] => [5] => [6] => [7] => [8] => [9] => [10] => [11] => [12] => [13] => [14] => [15] => [16] => [17] => [18] => [19] => [20] => [21] => [22] => [23] => [24] => [25] => [26] => [27] => [28] => [29] => [30] => [31] => [32] => [33] => [34] => [35] => [36] => [37] => [38] => [39] => [40] => [41] => [42] => [43] => [44] => [45] => [46] => [47] => [48] => [49] =>)

Я надеюсь, что получу ответ !! :-)

...