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
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
Worker::runAll();