2 Star 0 Fork 0

andyzhu / dangan

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
start_workerman.php 1.15 KB
一键复制 编辑 原始数据 按行查看 历史
andyzhu 提交于 2017-05-01 23:17 . 初始化
<?php
use Workerman\Worker;
require_once '/assets/plugins/workerman/Autoloader.php';
$global_uid = 0;
// 当客户端连上来时分配uid,并保存连接,并通知所有客户端
function handle_connection($connection)
{
global $text_worker, $global_uid;
// 为这个链接分配一个uid
$connection->uid = ++$global_uid;
}
// 当客户端发送消息过来时,转发给所有人
function handle_message($connection, $data)
{
global $text_worker;
foreach($text_worker->connections as $conn)
{
$conn->send($data);
}
}
// 当客户端断开时,广播给所有客户端
function handle_close($connection)
{
// global $text_worker;
// foreach($text_worker->connections as $conn)
// {
// $conn->send("user[{$connection->uid}] logout");
// }
}
// 创建一个文本协议的Worker监听2347接口
$text_worker = new Worker("websocket://0.0.0.0:2347");//实时数据
// 只启动1个进程,这样方便客户端之间传输数据
$text_worker->count = 1;
$text_worker->onConnect = 'handle_connection';
$text_worker->onMessage = 'handle_message';
$text_worker->onClose = 'handle_close';
Worker::runAll();
?>
1
https://gitee.com/andyzhu236726493/dangan.git
git@gitee.com:andyzhu236726493/dangan.git
andyzhu236726493
dangan
dangan
master

搜索帮助