Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich asynchrone GET-Anfragen in PHP stellen?

Wie kann ich asynchrone GET-Anfragen in PHP stellen?

Linda Hamilton
Freigeben: 2024-12-08 12:36:11
Original
372 Leute haben es durchsucht

How Can I Make Asynchronous GET Requests in PHP?

Asynchrone GET-Anfragen in PHP

Das Erstellen asynchroner GET-Anfragen in PHP ermöglicht eine effiziente Kommunikation mit externen Skripten, ohne den Hauptthread zu blockieren.

Verwenden file_get_contents()

Für GET-Anfragen, bei denen die Ausgabe nicht erforderlich ist, kann file_get_contents() verwendet werden:

$output = file_get_contents('http://www.example.com/');
Nach dem Login kopieren

Asynchrone Anfragen mit fsockopen()

Um asynchrone Anfragen zu stellen, ohne auf eine Antwort zu warten, können Sie verwenden fsockopen():

function make_async_get($url) {
    $parts = parse_url($url);
    $fp = fsockopen($parts['host'],
        isset($parts['port']) ? $parts['port'] : 80,
        $errno, $errstr, 30);
    
    $out = "GET ".$parts['path']." HTTP/1.1\r\n";
    $out.= "Host: ".$parts['host']."\r\n";
    $out.= "Connection: Close\r\n\r\n";
    
    fwrite($fp, $out);
    fclose($fp);
}

make_async_get('http://www.externalsite.com/script1.php?variable=45');
Nach dem Login kopieren

In diesem Beispiel wird der Socket geöffnet, die GET-Anfrage gesendet und der Socket sofort geschlossen, ohne die Antwort zu lesen.

Hinweis: Wenn Sie die Ausgabe der GET-Anfrage benötigen, sollten Sie die Verwendung von curl_post_async() in Betracht ziehen, wie in der referenzierten Lösung gezeigt.

Das obige ist der detaillierte Inhalt vonWie kann ich asynchrone GET-Anfragen in PHP stellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage