onMessage

설명:

callback Connection::$onMessage

이 기능은 Worker::$onMessage 콜백과 같은 역할을 하지만, 현재 연결에만 적용된다는 점에서 차별화됩니다. 즉, 특정 연결에 대해 onMessage 콜백을 설정할 수 있습니다.

예제

use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker('websocket://0.0.0.0:8484');
// 클라이언트 연결 이벤트가 발생할 때
$worker->onConnect = function(TcpConnection $connection)
{
    // 연결의 onMessage 콜백 설정
    $connection->onMessage = function(TcpConnection $connection, $data)
    {
        var_dump($data);
        $connection->send('receive success');
    };
};
// 워커 실행
Worker::runAll();

위 코드는 아래와 같은 효과를 가지고 있습니다.

use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker('websocket://0.0.0.0:8484');
// 모든 연결의 onMessage 콜백을 직접 설정
$worker->onMessage = function(TcpConnection $connection, $data)
{
    var_dump($data);
    $connection->send('receive success');
};
// 워커 실행
Worker::runAll();