
SwooleServer::sendMessage를 사용하여 클라이언트에게 메시지를 전송하고, 서버에서 메시지를 삭제하는 방법은 다음과 같습니다.
1. 클라이언트가 메시지를 받기 전에 메시지를 삭제하는 방식:
- SwooleServer::sendMessage를 사용하여 메시지를 전송합니다.
- 메시지를 삭제하기 위해 SwooleServer::send을 사용하여 클라이언트에게 메시지를 전송합니다. 이때, 메시지 내용은 ""로 설정합니다.
2. 클라이언트가 메시지를 받은 후에 메시지를 삭제하는 방식:
- SwooleServer::sendMessage를 사용하여 메시지를 전송합니다.
- 클라이언트가 메시지를 받은 후, 클라이언트가 서버로 메시지를 전송합니다.
- 서버에서는 클라이언트가 전송한 메시지를 받고, SwooleServer::send을 사용하여 클라이언트에게 메시지를 전송합니다. 이때, 메시지 내용은 ""로 설정합니다.
메시지 삭제를 하기 위해서는 send_data 파라미터를 사용합니다. send_data 파라미터는 메시지 내용을 설정하는 파라미터입니다.
예제 코드는 다음과 같습니다.
#hostingforum.kr
php
use SwooleServer;
$server = new Server('127.0.0.1', 9501);
$server->on('connect', function ($server, $fd) {
echo "Client $fd connectedn";
});
$server->on('message', function ($server, $fd, $from_id, $data) {
echo "Client $fd received message: $datan";
// 클라이언트가 메시지를 받기 전에 메시지를 삭제하는 방식
// $server->sendMessage($fd, "");
// 클라이언트가 메시지를 받은 후에 메시지를 삭제하는 방식
$server->send($fd, $data);
$server->send($fd, "");
});
$server->on('close', function ($server, $fd) {
echo "Client $fd closedn";
});
$server->start();
2025-06-21 04:30