라이브러리

[PHP] SwooleServer::sendMessage - ID로 작업자 프로세스에 메시지를 보냅니다.




SwooleServer::sendMessage

SwooleServer::sendMessage는 SwooleServer의 메시징 시스템을 사용하여 클라이언트에 메시지를 전송하는 메서드입니다. 이 메서드는 클라이언트와 서버 간의 실시간 통신을 가능하게 하며, 웹소켓 프로토콜을 사용하여 클라이언트와 서버 간의 메시지를 교환할 수 있습니다.

사용 방법


SwooleServer::sendMessage를 사용하려면 먼저 SwooleServer를 생성하고, 클라이언트와 연결된 후에 사용할 수 있습니다. 클라이언트와 서버 간의 메시지를 교환하기 위해, 클라이언트는 웹소켓 프로토콜을 사용하여 서버에 연결하고, 서버는 클라이언트에 메시지를 전송할 수 있습니다.

예제


다음 예제는 SwooleServer::sendMessage를 사용하여 클라이언트에 메시지를 전송하는 예제입니다.

#hostingforum.kr
php

// server.php

use SwooleServer;



$server = new Server('127.0.0.1', 9501, SWOOLE_BASE);



$server->on('connect', function ($server, $fd) {

    echo "Client $fd connected.
";

});



$server->on('message', function ($server, $fd, $fromId, $data) {

    echo "Client $fd received message: $data
";

    $server->sendMessage($fd, "Hello, client!");

});



$server->on('close', function ($server, $fd) {

    echo "Client $fd disconnected.
";

});



$server->start();



#hostingforum.kr
php

// client.php

use SwooleCoroutineHttpClient;



$client = new Client('127.0.0.1', 9501);



$client->upgrade('/');



while (true) {

    $data = $client->recv();

    if ($data) {

        echo "Received message: $data
";

    } else {

        break;

    }

    $client->push("Hello, server!");

}



$client->close();



설명


* `server.php`는 SwooleServer를 생성하고, 클라이언트와 연결된 후에 메시지를 전송하는 예제입니다.
* `client.php`는 클라이언트를 생성하고, 서버에 연결하여 메시지를 교환하는 예제입니다.
* `SwooleServer::sendMessage` 메서드는 클라이언트에 메시지를 전송하는 메서드입니다.
* `Client->recv` 메서드는 서버에서 받은 메시지를 읽는 메서드입니다.
* `Client->push` 메서드는 서버에 메시지를 전송하는 메서드입니다.

주의


* SwooleServer::sendMessage를 사용하려면, 클라이언트와 서버 간의 연결이 되어 있어야 합니다.
* 클라이언트와 서버 간의 메시지를 교환하기 위해, 클라이언트는 웹소켓 프로토콜을 사용하여 서버에 연결해야 합니다.
* SwooleServer::sendMessage를 사용하여 클라이언트에 메시지를 전송할 때, 클라이언트가 서버에 연결되어 있어야 합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 163 페이지

검색

게시물 검색