라이브러리
[PHP] SwooleWebSocketServer::exist - 파일 설명자가 존재하는지 확인합니다.
Swoole WebSocket Server
Swoole는 PHP에서 사용할 수 있는 고성능 네트워크 프레임워크입니다. WebSocket은 웹 소켓을 지원하는 서버를 만들기 위한 클래스입니다.
# SwooleWebSocketServer::exist
SwooleWebSocketServer::exist 메소드는 WebSocket 서버가 현재 실행 중인지 확인하는 메소드입니다.
사용법
#hostingforum.kr
php
use SwooleWebSocketServer;
$server = new Server('0.0.0.0', 9501);
$server->set([
'worker_num' => 4,
'task_worker_num' => 4,
'task_max_request' => 1000,
'task_tmp_dir' => '/tmp/swoole',
]);
$server->on('open', function ($server, $fd) {
echo "Client: $fd connected
";
});
$server->on('message', function ($server, $fd, $from_id, $data) {
echo "Client: $fd received message => $data
";
$server->push($fd, "Server: Hello, Client!");
});
$server->on('close', function ($server, $fd, $reactorId) {
echo "Client: $fd closed
";
});
$server->start();
예제
위의 예제는 WebSocket 서버를 만들고, 클라이언트가 연결되면 "Client: $fd connected" 메시지를 출력하고, 클라이언트가 메시지를 보낼 때 "Client: $fd received message => $data" 메시지를 출력하고, 클라이언트가 연결을 끊을 때 "Client: $fd closed" 메시지를 출력합니다.
SwooleWebSocketServer::exist 사용 예제
#hostingforum.kr
php
use SwooleWebSocketServer;
$server = new Server('0.0.0.0', 9501);
$server->set([
'worker_num' => 4,
'task_worker_num' => 4,
'task_max_request' => 1000,
'task_tmp_dir' => '/tmp/swoole',
]);
$server->on('open', function ($server, $fd) {
echo "Client: $fd connected
";
});
$server->on('message', function ($server, $fd, $from_id, $data) {
echo "Client: $fd received message => $data
";
$server->push($fd, "Server: Hello, Client!");
});
$server->on('exist', function ($server, $fd) {
if ($server->exist($fd)) {
echo "Client: $fd is exist
";
} else {
echo "Client: $fd is not exist
";
}
});
$server->on('close', function ($server, $fd, $reactorId) {
echo "Client: $fd closed
";
});
$server->start();
SwooleWebSocketServer::exist 사용 설명
위의 예제에서 `exist` 메소드는 클라이언트가 연결을 끊었는지 확인합니다. 클라이언트가 연결을 끊었으면 `$server->exist($fd)`는 `false`를 반환하고, 연결이 유지되고 있으면 `$server->exist($fd)`는 `true`를 반환합니다.
참고
* Swoole WebSocket Server 문서: https://wiki.swoole.com/wiki/page/1081.html
* Swoole WebSocket Server 예제: https://github.com/swoole/swoole-src/tree/master/example/websocket
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.