Всем привет, написал ф-ю, которая подгружает данные с яндекс метрики и выводит в нужном для меня виде на экран, у меня есть массив clientLogin и token, хранящие данные для входа, дело в том, что при увеличении числа аккаунтов, к примеру до 10, запросы происходят ну очень долго, подскажите как ускорить код и возможно ли вообще это? пробовал написать код для яндекс директа и подгружать статистику оттуда, но там еще дольше получается
/*Подгружаем данные с яндекс.метрики*/
function metric_request ($date,$metric,$token,$direct_login){
$ids_temp=file_get_contents('https://api-metrika.yandex.ru/management/v1/counters?oauth_token='.$token);
$ids_temp_o=json_decode($ids_temp);
$ids = array();
$size=count($ids_temp_o->counters);
for($i=0;$i<$size;$i++){
$ids[$i]=$ids_temp_o->counters[$i]->id;
}
$query = array(
'date1' => $date,
'date2' => 'today',
'ids' => $ids,
'metrics' => $metric,
'oauth_token' => $token,
'direct_client_logins'=> $direct_login,
);
$response=file_get_contents('https://api-metrika.yandex.ru/stat/v1/data?'.http_build_query($query));
$response_o=json_decode($response);
return $response_o;
};
$size=count($clientLogin);
for ($i=0;$i<$size;$i++){
$ClicksCost_7days=metric_request ('7daysAgo','ym:ad:<currency>AdCost',$token[$i],$clientLogin[$i]);
$MidConsumption=$ClicksCost_7days->totals[0] / 7;
$balance = get_amount_apiv4($token[$i],$clientLogin[$i]);
$Days_to_Paid = round($balance/$MidConsumption , 0, PHP_ROUND_HALF_DOWN);
$ClicksAmount_Cost_today=metric_request('yesterday','ym:ad:clicks,ym:ad:<currency>AdCost',$token[$i],$clientLogin[$i]);
$MidCostToday=round($ClicksAmount_Cost_today->totals[1] / $ClicksAmount_Cost_today->totals[0],2,PHP_ROUND_HALF_UP);
$Denied = metric_request('yesterday','ym:s:bounceRate',$token[$i],$clientLogin[$i]);
echo "<div id=\"main_form\">
<p class=\"text\" style=\"background:chocolate;\">Логин: {$clientLogin[$i]}</p>
<p class=\"text\">Ниша: просто текст</p>
<p class=\"text\">Оставшийся бюджет: ".$balance." RUB</p>
<p class=\"text\">Необходимо пополнение: ".$Days_to_Paid." день(дней)</p>
<p class=\"text\">Количество кликов (за сегодня): ".$ClicksAmount_Cost_today->totals[0]."</p>
<p class=\"text\">Средняя цена кликов (за сегодня): ".$MidCostToday." RUB</p>
<p class=\"text\">Отказы (за сегодня): ".round($Denied->totals[0],2, PHP_ROUND_HALF_UP)." %</p>
<p class=\"text\">Расход (за сегодня): ".round($ClicksAmount_Cost_today->totals[1],2, PHP_ROUND_HALF_UP)." RUB</p></div>
";
}