Ich arbeite an einer PHP-Webanwendung und muss einige Netzwerkoperationen in der Anforderung ausführen, z. B. das Abrufen einer Person vom Remote-Server basierend auf der Benutzeranforderung.
Ist es möglich, asynchrones Verhalten in PHP zu simulieren, da ich einige Daten an eine Funktion übergeben muss und auch eine Ausgabe von ihr benötige?
Mein Code lautet wie folgt:
<?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;
?>
Jeder Netzwerkvorgang dauert ungefähr 5 Sekunden, um die Antwortzeit meiner Anwendung um insgesamt 15 Sekunden zu verlängern, vorausgesetzt, ich stelle 3 Anfragen.
Die Funktion makeNetworkCall () führt lediglich eine HTTP-POST-Anforderung aus.
Der Remote-Server ist eine Drittanbieter-API, daher habe ich dort keine Kontrolle darüber.
PS: Bitte antworten Sie nicht mit Vorschlägen zu AJAX oder anderen Dingen. Ich suche derzeit, ob ich dies über PHP tun kann, möglicherweise mit einer C ++ - Erweiterung oder so ähnlich.
CURL
, Anfragen zu feuern und einige Daten aus dem Internet abzurufen ...