>백엔드 개발 >PHP 튜토리얼 >PHP에서 비동기 GET 요청을 어떻게 만들 수 있나요?

PHP에서 비동기 GET 요청을 어떻게 만들 수 있나요?

Linda Hamilton
Linda Hamilton원래의
2024-12-08 12:36:11348검색

How Can I Make Asynchronous GET Requests in PHP?

PHP의 비동기 GET 요청

PHP에서 비동기 GET 요청을 수행하면 메인 스레드를 차단하지 않고 외부 스크립트와 효율적으로 통신할 수 있습니다.

사용 file_get_contents()

출력이 필요하지 않은 GET 요청의 경우 file_get_contents()를 사용할 수 있습니다.

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

fsockopen()을 사용한 비동기 요청

응답을 기다리지 않고 비동기식 요청을 하려면 다음을 사용할 수 있습니다. 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');

이 예에서는 소켓이 열리고 GET 요청이 전송된 후 응답을 읽지 않고 소켓이 즉시 닫힙니다.

참고: GET 요청의 출력이 필요한 경우 참조된 솔루션에 표시된 대로curl_post_async()를 사용하는 것이 좋습니다.

위 내용은 PHP에서 비동기 GET 요청을 어떻게 만들 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.