Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Membuat Permintaan GET Asynchronous dalam PHP?

Bagaimanakah Saya Boleh Membuat Permintaan GET Asynchronous dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-12-08 12:36:11353semak imbas

How Can I Make Asynchronous GET Requests in PHP?

Permintaan GET Asynchronous dalam PHP

Membuat permintaan GET tak segerak dalam PHP membolehkan komunikasi yang cekap dengan skrip luaran tanpa menyekat urutan utama.

Menggunakan file_get_contents()

Untuk permintaan GET yang outputnya tidak diperlukan, file_get_contents() boleh digunakan:

$output = file_get_contents('http://www.example.com/');

Permintaan Asynchronous dengan fsockopen()

Untuk membuat permintaan tak segerak tanpa menunggu balasan, anda boleh menggunakan 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');

Dalam contoh ini, soket dibuka, permintaan GET dihantar dan soket ditutup serta-merta tanpa membaca respons.

Nota: Jika anda memerlukan output permintaan GET, pertimbangkan untuk menggunakan curl_post_async() seperti yang ditunjukkan dalam penyelesaian yang dirujuk.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membuat Permintaan GET Asynchronous dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn