Проблема здесь в том, что когда вы вызываете curl в цикле, второй вызов должен завершиться первым, затем может начаться второй, и это займет много времени. Чтобы исправить это, вы можете использовать (pclose popen), скрипт будет передавать их в фоновом режиме и ввторой сценарий вы можете управлять вашими возвращаемыми данными:
первый сценарий:
<?php
$feedbacks = getFeedbacks();
if(count($feedbacks)>0){
foreach($feedbacks as $feedback){
$getData($feedback->order_id);
}
}
function getData($orderId)
{
$orderId = $orderId;
pclose(popen('sudo /usr/bin/php /home/secondscript.php -o '.$orderId." >/dev/null &", 'r'));
}
второй сценарий:
<?php
$command_line_args= getopt("o:");
$orderId=$command_line_args["o"];
$api = "api address here";
$curl = curl_init($api);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$curl_response = curl_exec($curl);
$json = json_decode($curl_response);
{here u can use the json return ..}