Задать вопрос
@Ambrel

Очень долго работает CURL, что делать?

У меня есть кусок кода, но он работает ну очееееееень долго. Можно ли его как то ускорить ?

<?php

function debug($string) {
	echo "<pre>";
	var_dump($string);
	echo "</pre>";
}

$start_time = microtime(true);

$date = date("Y-m-d", time());

$data_string = '{"Language":"ru","Params":["'. $date .'",null,null,null,null,180],"Vers":6,"Adult":false,"partner":1}';

// ==========================
// 
// DATE
// 
// ==========================

$ch = curl_init('https://1xpng.host/getTranslate/ViewGameResultsGroup');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                                                                     
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);                                                                  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                                                                          
	'Content-Type: application/json',                                                                                
	'Content-Length: ' . strlen($data_string))                                                                       
);  
$result = curl_exec($ch);
curl_close($ch);

$array = json_decode(json_encode(json_decode($result)), true)["Data"][4]["Elems"][0]["Elems"];

foreach($array as $value) {
	echo "ID: " . intval($value["Head"][18]) . " , Time: " . date("H:i:s - d.m.Y", $value["Head"][7]) . " , Game: " . $value["Head"][6] . "<br>";
}

$end_time = microtime(true);
echo round(( $end_time - $start_time ), 5) . " сек<br><br><br><br>";
  • Вопрос задан
  • 1387 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Stepik
    Язык программирования PHP
    1 неделя
    Далее
Пригласить эксперта
Ответы на вопрос 2
Stalker_RED
@Stalker_RED
Может воспользоваться чем-то асинхронным, типа
curl_multi_ или guzzle?

Что вы пытаетесь сделать вообще?
Ответ написан
megafax
@megafax
CTO in MarTech
Сам курл нормально отрабатывает (согласно скорости сервера, на котором запуск идет) Долго отдается результат, который Вы спрашиваете. Т.е. либо уточняйте его, чтобы меньше данных запрашивать, либо никак.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы