일반적으로 HTTP에 액세스하는 방법에는 주로 컬, 소켓, file_get_contents() 및 기타 방법이 있습니다.
상대방 서버가 응답하지 않으면 비극에 빠지게 됩니다. 서버 전체를 죽이기 쉬우므로 http 접속 시 타임아웃 문제도 고려해야 합니다.
[CURL 액세스 HTTP]
CURL은 고성능 및 일부 동시성 지원 기능을 갖춘 HTTP 프로토콜 인터페이스에 액세스하기 위해 일반적으로 사용되며 신뢰할 수 있는 lib 라이브러리입니다. (추천 학습: PHP 프로그래밍 입문부터 숙련까지)
cURL 확장을 사용하여 시간 초과 제어를 처리하자
시간 초과를 보다 정확하게 처리하려면 연결 시간 초과를 설정하고 읽을 수 있는 cURL 확장을 사용하세요. 시간 초과를 가져옵니다(CURLOPT_TIMEOUTCURLOPT_CONNECTTIMEOUT).
HTTP 인터페이스가 밀리초 수준으로 반환되도록 제어하려면 CURLOPT_TIMEOUT_MS 및 CURLOPT_CONNECTTIMEOUT_M 상수를 사용할 수도 있습니다.
이 두 상수를 사용하는 경우 컬_setopt($ch, CURLOPT_NOSIGNAL, 1);
을 설정해야 합니다. cURL 확장 메커니즘은 매우 특별합니다. 지정된 읽기 시간. 그러면 호출이 종료되고 프로그램은 오류를 보고하지 않습니다
코드를 통해 살펴보세요:
function e_curl() { global $url; $ch = curl_init($url); curl_setopt($ch, CURLOPT_NOSIGNAL, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 3); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 1); $response = curl_exec($ch); if ($response === false) { $info = curl_getinfo($ch); if ($info['http_code'] === 0) { return false; } } return true;}e_curl();
위 내용은 PHP 인터페이스 시간 초과를 처리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!