3 Star 3 Fork 2

shwy / danmu2

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
socket_servers2.php 1.09 KB
一键复制 编辑 原始数据 按行查看 历史
shwy 提交于 2016-12-30 17:54 . sd
<?php
//创建websocket服务器对象,监听0.0.0.0:9502端口
$ws = new Swoole\Websocket\Server("0.0.0.0", 9506);
$ws->set(array(
'reactor_num'=>8,
'worker_num' => 4,
'backlog' => 128,
'daemonize'=>1,
));
//监听WebSocket连接打开事件
$ws->on('open', function ($ws, $request) {
$fd = $request->fd;
echo "client-{$fd} is connect\n";
//$ws->push($request->fd, "hello, welcome\n");
});
//监听WebSocket消息事件
$ws->on('message', function ($ws, $frame) {
// $msg = 'from'.$frame->fd.":{$frame->data}\n";
$data = htmlentities(htmlspecialchars($frame->data));
if(mb_strlen($data,'utf8')>30){
$data = mb_substr($data, 0,30,'utf-8').'...';
}
// 正常发送
$arr = array(
'info' => "$data",
'img' => '',
'href' => 'javascript:void(0);',
'status' => 1
);
$msg = json_encode($arr);
foreach($ws->connections as $fd) {
$ws->push($fd, $msg);
}
});
//监听WebSocket连接关闭事件
$ws->on('close', function ($ws, $fd) {
echo "client-{$fd} is closed\n";
});
$ws->start();
PHP
1
https://gitee.com/slgz/danmu2.git
git@gitee.com:slgz/danmu2.git
slgz
danmu2
danmu2
master

搜索帮助