
stream_set_timeout 함수는 TCP 소켓의 타임아웃 설정을 위해 사용됩니다. 이 함수의 반환 값은 TRUE 또는 FALSE입니다. TRUE가 반환되면 타임아웃 설정이 성공적으로 완료되었으며, FALSE가 반환되면 설정이 실패했습니다.
stream_set_timeout 함수는 다음과 같은 경우에 에러가 발생할 수 있습니다.
- 타임아웃 값이 0보다 작거나 음수일 때
- 타임아웃 값이 정의되지 않은 경우
- TCP 소켓이 이미 닫힌 경우
stream_set_timeout 함수를 사용하여 설정한 타임아웃이 TCP 소켓의 연결을 끊을 때 작동하는지 확인하려면, 다음 예제를 참조하세요.
#hostingforum.kr
php
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec' => 10, 'usec' => 0));
socket_set_option($socket, SOL_SOCKET, SO_SNDTIMEO, array('sec' => 10, 'usec' => 0));
if (!socket_connect($socket, 'example.com', 80)) {
echo '연결 실패';
} else {
echo '연결 성공';
}
socket_close($socket);
이 예제에서는 socket_set_option 함수를 사용하여 TCP 소켓의 타임아웃 설정을 합니다. socket_connect 함수를 사용하여 TCP 소켓에 연결을 시도하고, 연결이 성공하면 '연결 성공'이 출력됩니다. 연결이 실패하면 '연결 실패'가 출력됩니다.
2025-05-16 17:46