라이브러리

[PHP] stream_socket_shutdown - 풀 듀플렉스 연결 종료




PHP Stream Socket Shutdown


PHP의 `stream_socket_shutdown()` 함수는 소켓을 닫고 소켓을 사용할 수 없게 만드는 함수입니다. 이 함수는 소켓을 닫기 전에 데이터를 전송하거나 수신할 수 있는지 여부를 결정할 수 있습니다.

# 함수의 매개변수


`stream_socket_shutdown()` 함수에는 두 개의 매개변수가 있습니다.

- `$read`: 데이터를 수신할 수 있는지 여부를 결정합니다. `$read`이 `true`이면 데이터를 수신할 수 있습니다.
- `$write`: 데이터를 전송할 수 있는지 여부를 결정합니다. `$write`이 `true`이면 데이터를 전송할 수 있습니다.
- `$close`: 소켓을 닫을지 여부를 결정합니다. `$close`이 `true`이면 소켓을 닫습니다.

# 예제


다음 예제는 소켓을 닫기 전에 데이터를 전송하고 수신하는 방법을 보여줍니다.

#hostingforum.kr
php

// 소켓을 열고 데이터를 전송합니다.

$sock = stream_socket_server("tcp://localhost:8080", $errno, $errstr);

if (!$sock) {

    echo "$errstr ($errno)
";

} else {

    fwrite($sock, "Hello, world!");

    fclose($sock);

}



// 소켓을 열고 데이터를 수신합니다.

$sock = stream_socket_client("tcp://localhost:8080", $errno, $errstr);

if (!$sock) {

    echo "$errstr ($errno)
";

} else {

    $data = fread($sock, 1024);

    echo $data;

    stream_socket_shutdown($sock, STREAM_SHUT_RDWR);

    fclose($sock);

}



# 예제 설명


이 예제에서는 소켓을 열고 데이터를 전송하는 코드를 먼저 작성합니다. 그런 다음, 소켓을 열고 데이터를 수신하는 코드를 작성합니다. 데이터를 수신한 후, `stream_socket_shutdown()` 함수를 사용하여 소켓을 닫습니다. `$read` 매개변수는 `true`로 설정하여 데이터를 수신할 수 있습니다. `$write` 매개변수도 `true`로 설정하여 데이터를 전송할 수 있습니다. `$close` 매개변수는 `true`로 설정하여 소켓을 닫습니다.

# 참고


`stream_socket_shutdown()` 함수는 소켓을 닫기 전에 데이터를 전송하거나 수신할 수 있는지 여부를 결정할 수 있습니다. 이 함수는 소켓을 사용할 수 없게 만드는 함수입니다. 소켓을 닫기 전에 데이터를 전송하거나 수신하려면 `$read`과 `$write` 매개변수를 `true`로 설정해야 합니다. 소켓을 닫으려면 `$close` 매개변수를 `true`로 설정해야 합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 116 페이지

검색

게시물 검색