Sockets socket_sendto
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_sendto — 연결 여부에 관계없이 소켓에 메시지를 보냅니다.
설명
socket_sendto( Socket $socket, string $data, int $length, int $flags, string $address, ?int $port = null ): int|false
socket_sendto() 함수는 data
에서 소켓 socket
을 통해 주소 address
의 port
로 length
바이트를 보냅니다.
매개변수
socket
- socket_create()를 사용하여 생성된 Socket 인스턴스입니다.
data
- 보낸 데이터는 버퍼
data
에서 가져옵니다. length
data
의length
바이트가 전송됩니다.flags
flags
값은 이진 OR(|
) 연산자와 결합된 다음 플래그의 조합일 수 있습니다.Possible values for
flags
MSG_OOB
OOB(대역 외) 데이터를 보냅니다. MSG_EOR
기록 표시를 나타냅니다. 전송된 데이터가 기록을 완료합니다. MSG_EOF
소켓의 보낸 쪽을 닫고 보낸 데이터 끝에 이에 대한 적절한 알림을 포함합니다. 전송된 데이터는 트랜잭션을 완료합니다. MSG_DONTROUTE
라우팅을 우회하고 직접 인터페이스를 사용합니다. address
- 원격 호스트의 IP 주소입니다.
port
port
는 데이터가 전송될 원격 포트 번호입니다.
반환 값
socket_sendto()는 원격 호스트로 보낸 바이트 수를 반환하거나 오류가 발생하면 false
를 반환합니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | socket 은 이제 Socket 인스턴스입니다. 이전에는 리소스였습니다. |
8.0.0 | port 는 이제 nullable입니다. |
Examples
예제 #1 socket_sendto() 예제
<?php
$sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
$msg = "Ping !";
$len = strlen($msg);
socket_sendto($sock, $msg, $len, 0, '127.0.0.1', 1223);
socket_close($sock);
?>
기타
- socket_send() - 연결된 소켓에 데이터를 보냅니다.