使用workerman简单的多人聊天室

代码如下:

uid = ++$global_uid;
    foreach ($text_worker->connections as $conn) {
        $conn->send("user[{$connection->uid}] online");
    }
}

// 当客户端发送消息过来时,转发给所有人
function handle_message($connection, $data) {
    global $text_worker;
    foreach ($text_worker->connections as $conn) {
        $conn->send("user[{$connection->uid}] said: $data");
    }
}

// 当客户端断开时,广播给所有客户端
function handle_close($connection) {
    global $text_worker;
    foreach ($text_worker->connections as $conn) {
        $conn->send("user[{$connection->uid}] logout");
    }
}

$text_worker = new Worker("websocket://0.0.0.0:2347");

$text_worker->count = 1;

$text_worker->onConnect = 'handle_connection';
$text_worker->onMessage = 'handle_message';
$text_worker->onClose = 'handle_close';

Worker::runAll();

HTML页面展示:




    
    Simple Chat


Simple Chat



你可能感兴趣的:(php)