라이브러리
[PHP] SwooleClient::__construct - SSL을 사용하거나 사용하지 않고 Swoole 동기 또는 비동기 TCP/UDP 클라이언트를 만듭니다.
SwooleClient::__construct
SwooleClient는 PHP에서 Swoole를 사용하여 TCP, UDP, WebSocket, HTTP 클라이언트를 생성하는 클래스입니다. SwooleClient::__construct는 클라이언트를 초기화하는 메서드입니다.
# 매개 변수
* `$host`: 클라이언트가 연결할 서버의 호스트 이름 또는 IP 주소입니다.
* `$port`: 클라이언트가 연결할 서버의 포트 번호입니다.
* `$sock_type`: 클라이언트가 사용할 소켓 타입입니다. 다음 값 중 하나를 선택할 수 있습니다.
* `SWOOLE_SOCK_TCP`: TCP 소켓
* `SWOOLE_SOCK_UDP`: UDP 소켓
* `SWOOLE_SOCK_TCP6`: IPv6 TCP 소켓
* `SWOOLE_SOCK_UDP6`: IPv6 UDP 소켓
* `SWOOLE_SOCK_TCP_OVERLOAD6`: IPv6 TCP 소켓 (오버로드 모드)
* `SWOOLE_SOCK_TCP_OVERLOAD4`: IPv4 TCP 소켓 (오버로드 모드)
* `SWOOLE_SOCK_TCP_NODELAY`: TCP_NODELAY 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_KEEPALIVE`: TCP_KEEPALIVE 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_KEEPIDLE`: TCP_KEEPIDLE 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_KEEPINTVL`: TCP_KEEPINTVL 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_KEEPCNT`: TCP_KEEPCNT 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_FASTOPEN`: TCP_FASTOPEN 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_SNDLOWAT`: TCP_SNDLOWAT 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_SNDTIMEO`: TCP_SNDTIMEO 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_RCVLOWAT`: TCP_RCVLOWAT 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_TCP_RCVTIMEO`: TCP_RCVTIMEO 옵션을 사용하는 TCP 소켓
* `SWOOLE_SOCK_UDP6`: IPv6 UDP 소켓
* `SWOOLE_SOCK_UDP`: UDP 소켓
* `SWOOLE_SOCK_UNIX_DGRAM`: UNIX 도메인 UDP 소켓
* `SWOOLE_SOCK_UNIX_STREAM`: UNIX 도메인 TCP 소켓
* `SWOOLE_SOCK_SSL`: SSL/TLS 소켓
* `SWOOLE_SOCK_SSLv23`: SSLv2.3 소켓
* `SWOOLE_SOCK_SSLv2`: SSLv2 소켓
* `SWOOLE_SOCK_SSLv3`: SSLv3 소켓
* `SWOOLE_SOCK_TLSv1`: TLSv1 소켓
* `SWOOLE_SOCK_TLSv1_1`: TLSv1.1 소켓
* `SWOOLE_SOCK_TLSv1_2`: TLSv1.2 소켓
* `SWOOLE_SOCK_TLSv1_3`: TLSv1.3 소켓
* `$flags`: 클라이언트의 옵션입니다. 다음 값 중 하나를 선택할 수 있습니다.
* `SWOOLE_SOCK_ASYNC`: 비동기 소켓을 사용합니다.
* `SWOOLE_SOCK_SYNC`: 동기 소켓을 사용합니다.
* `SWOOLE_SOCK_BLOCK`: 블록킹 소켓을 사용합니다.
* `SWOOLE_SOCK_NONBLOCK`: 비블록킹 소켓을 사용합니다.
* `SWOOLE_SOCK_LINGER`: 소켓의LINGER 옵션을 사용합니다.
* `SWOOLE_SOCK_REUSEADDR`: 소켓의REUSEADDR 옵션을 사용합니다.
* `SWOOLE_SOCK_KEEPALIVE`: 소켓의KEEPALIVE 옵션을 사용합니다.
* `SWOOLE_SOCK_SNDBUF`: 소켓의SNDBUF 옵션을 사용합니다.
* `SWOOLE_SOCK_RCVBUF`: 소켓의RCVBUF 옵션을 사용합니다.
* `SWOOLE_SOCK_NODELAY`: 소켓의NODELAY 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_NODELAY`: 소켓의TCP_NODELAY 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_KEEPALIVE`: 소켓의TCP_KEEPALIVE 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_KEEPIDLE`: 소켓의TCP_KEEPIDLE 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_KEEPINTVL`: 소켓의TCP_KEEPINTVL 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_KEEPCNT`: 소켓의TCP_KEEPCNT 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_FASTOPEN`: 소켓의TCP_FASTOPEN 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_SNDLOWAT`: 소켓의TCP_SNDLOWAT 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_SNDTIMEO`: 소켓의TCP_SNDTIMEO 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_RCVLOWAT`: 소켓의TCP_RCVLOWAT 옵션을 사용합니다.
* `SWOOLE_SOCK_TCP_RCVTIMEO`: 소켓의TCP_RCVTIMEO 옵션을 사용합니다.
* `SWOOLE_SOCK_UNIX_DGRAM`: 소켓의UNIX_DGRAM 옵션을 사용합니다.
* `SWOOLE_SOCK_UNIX_STREAM`: 소켓의UNIX_STREAM 옵션을 사용합니다.
* `SWOOLE_SOCK_SSL`: 소켓의SSL 옵션을 사용합니다.
* `SWOOLE_SOCK_SSLv23`: 소켓의SSLv2.3 옵션을 사용합니다.
* `SWOOLE_SOCK_SSLv2`: 소켓의SSLv2 옵션을 사용합니다.
* `SWOOLE_SOCK_SSLv3`: 소켓의SSLv3 옵션을 사용합니다.
* `SWOOLE_SOCK_TLSv1`: 소켓의TLSv1 옵션을 사용합니다.
* `SWOOLE_SOCK_TLSv1_1`: 소켓의TLSv1.1 옵션을 사용합니다.
* `SWOOLE_SOCK_TLSv1_2`: 소켓의TLSv1.2 옵션을 사용합니다.
* `SWOOLE_SOCK_TLSv1_3`: 소켓의TLSv1.3 옵션을 사용합니다.
* `$timeout`: 소켓의 타임아웃 시간입니다. 기본값은 0입니다.
# 예제
#hostingforum.kr
php
use SwooleClient;
$client = new Client([
'host' => '127.0.0.1',
'port' => 9501,
'sock_type' => SWOOLE_SOCK_TCP,
'timeout' => 1,
]);
$client->connect();
$client->send("Hello, world!");
$data = $client->recv();
echo $data . "
";
$client->close();
이 예제에서는 TCP 소켓을 사용하여 서버에 연결하고 "Hello, world!" 메시지를 보내고 데이터를 수신합니다.
# 참고
* SwooleClient::__construct는 클라이언트를 초기화하는 메서드입니다.
* `$host`, `$port`, `$sock_type` 매개 변수는 클라이언트가 연결할 서버의 호스트 이름 또는 IP 주소, 포트 번호, 소켓 타입을 지정합니다.
* `$flags` 매개 변수는 클라이언트의 옵션을 지정합니다.
* `$timeout` 매개 변수는 소켓의 타임아웃 시간을 지정합니다.
* 클라이언트를 초기화한 후 `connect` 메서드를 호출하여 서버에 연결할 수 있습니다.
* `send` 메서드를 호출하여 데이터를 서버로 보내고 `recv` 메서드를 호출하여 데이터를 수신할 수 있습니다.
* `close` 메서드를 호출하여 클라이언트를 종료할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.