Асинхронный вызов функции в PHP
Я работаю над веб-приложением PHP, и мне нужно выполнить некоторые сетевые операции в запросе, такие как выборка кого-то с удаленного сервера на основе запроса пользователя.
Можно ли имитировать асинхронное поведение в PHP, учитывая, что мне нужно передать некоторые данные в функцию, а также нужно выводить из нее.
Мой код похож на:
<?php
$data1 = processGETandPOST();
$data2 = processGETandPOST();
$data3 = processGETandPOST();
$response1 = makeNetworkCall($data1);
$response2 = makeNetworkCall($data2);
$response3 = makeNetworkCall($data3);
processNetworkResponse($response1);
processNetworkResponse($response2);
processNetworkResponse($response3);
/*HTML and OTHER UI STUFF HERE*/
exit;
?>
Каждая сетевая операция занимает около 5 секунд, чтобы добавить в общей сложности 15 секунд ко времени отклика моего приложения, учитывая, что я делаю 3 запроса.
Функция makeNetworkCall () просто выполняет HTTP-запрос POST.
Удаленный сервер является сторонним API, поэтому я не имею никакого контроля над ним.
PS: Пожалуйста, не отвечайте на предложения о AJAX или других вещах. В настоящее время я смотрю, могу ли я сделать это через PHP, может быть с расширением C ++ или что-то в этом роде.