这篇文章主要介绍了PHP之使用swoole统计在线人数和ID案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
$server->connections
//                               s                      e                      r                      v                      e                      r                      −                      >                      c                      o                      n                      n                      e                      c                      t                      i                      o                      n                      s                      遍                      历                      所                      有                      w                      e                      b                      s                      o                      c                      k                      e                      t                      连                      接                      用                      户                      的                      f                      d                      ,                      给                      所                      有                      用                      户                      推                      送                      统                      计                      人                      数                      :                      c                      o                      u                      n                      t                      (                          server->connections 遍历所有websocket连接用户的fd,给所有用户推送 统计人数:count(               server−>connections遍历所有websocket连接用户的fd,给所有用户推送统计人数:count(server->connections)
例子:
在开启或关闭时统计在线人数
开启
$server->on('open', function (Swoole\WebSocket\Server $server, $request) {
    $arr = array('action'=>'count','num'=>count($server->connections));
    $jsonTo = json_encode($arr);
    echo "在线人数:{$jsonTo};server: handshake success with fd={$request->fd}\n";
});
关闭
$server->on('close', function ($ser, $fd) {
    $arr = array('action'=>'count','num'=>count($server->connections));
    $jsonTo = json_encode($arr);
    echo "在线人数:{$jsonTo};client {$fd} closed\n";
});
出现错误:PHP Fatal error: Uncaught Swoole\Exception: failed to listen server port[0.0.0.0:9502], Error: Address already in use

这是因为swoole调试由于开启了进程守护,导至报错
关掉进行就,在重新启动就不会了
1 查看我的 swoole 监听端口号 9502
//查看端口
netstat -anp  | grep  9502
//关掉守护
kill -9 174739

再重启服务
参考:
https://wenda.swoole.com/detail/106719
http://www.51zuso.com/admin/p/710.html
到此这篇关于PHP之使用swoole统计在线人数和ID案例讲解的文章就介绍到这了,更多相关PHP之使用swoole统计在线人数和ID内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:PHP之使用swoole统计在线人数和ID案例讲解
				
        
 
            
        基础教程推荐
- PHP判断一个字符串是否是回文字符串的方法 2024-01-31
 - PHP+MySQL+sphinx+scws实现全文检索功能详解 2023-01-31
 - 设定php简写功能的方法 2023-03-17
 - php数组函数序列之array_sum() – 计算数组元素值之和 2024-01-15
 - PHP实现文件下载【实例分享】 2024-04-27
 - PHP手机短信验证码实现流程详解 2022-10-18
 - php实现构建排除当前元素的乘积数组方法 2022-11-23
 - Yii框架连表查询操作示例 2023-02-13
 - php实现数组筛选奇数和偶数示例 2024-02-05
 - PHP实现抽奖系统的示例代码 2023-06-26
 
    	
    	
    	
    	
    	
    	
    	
    	
						
						
						
						
						
				
				
				
				