
stream_socket_shutdown 함수는 소켓을 닫기 전에 버퍼 데이터를 읽어내는 작업을 수행합니다. 이 함수는 세 가지 옵션을 지원합니다: read, write, both.
- read 옵션: 소켓을 닫기 전에 읽을 수 있는 데이터만 읽어내고, 소켓을 닫습니다.
- write 옵션: 소켓을 닫기 전에 쓰기 가능한 데이터만 읽어내고, 소켓을 닫습니다.
- both 옵션: 소켓을 닫기 전에 읽을 수 있는 데이터와 쓰기 가능한 데이터 모두를 읽어내고, 소켓을 닫습니다.
버퍼 데이터를 읽어내는 방법은 다음과 같습니다.
#hostingforum.kr
php
$socket = stream_socket_pair(STREAM_PF_UNIX, STREAM_SOCK_STREAM, STREAM_IPPROTO_IP);
stream_set_blocking($socket[0], false);
stream_set_blocking($socket[1], false);
// 데이터를 쓰기
fwrite($socket[1], "Hello, World!");
// 버퍼 데이터를 읽어내는 옵션
$read = stream_socket_shutdown($socket[0], STREAM_SHUT_READ);
$write = stream_socket_shutdown($socket[0], STREAM_SHUT_WRITE);
// 읽어낸 데이터를 출력
echo fread($socket[0], 1024);
// 소켓을 닫습니다.
fclose($socket[0]);
fclose($socket[1]);
위 코드에서는 소켓을 닫기 전에 버퍼 데이터를 읽어내는 방법을 보여줍니다. stream_socket_shutdown 함수를 사용하여 버퍼 데이터를 읽어내는 방법은 위 코드에서 볼 수 있습니다.
2025-04-05 21:34