workerman统计在线人数实现代码:(推荐:workerman教程)
服务器端代码
<?php use Workerman\Worker; use Workerman\Lib\Timer; require_once __DIR__ . '/Workerman/Autoloader.php'; $worker = new Worker('websocket://127.0.0.1:2345'); // 全局变量,保存当前进程的客户端连接数 $connection_count = 0; // 这个例子中进程数必须为1 $worker->count = 1; $worker->onConnect = function($connection) { // 有新的客户端连接时,连接数+1 global $connection_count; ++$connection_count; echo "now connection_count=$connection_count\n"; }; // 进程启动时设置一个定时器,定时向所有客户端连接发送数据 $worker->onWorkerStart = function($worker) { // 定时,每10秒一次 Timer::add(1, function()use($worker) { global $connection_count; // 遍历当前进程所有的客户端连接,发送当前服务器的时间 foreach($worker->connections as $connection) { $connection->send($connection_count); } }); }; $worker->onClose = function($connection) { // 客户端关闭时,连接数-1 global $connection_count; $connection_count--; echo "now connection_count=$connection_count\n"; }; // 运行worker Worker::runAll();
当客户端与Workerman建立连接时(TCP三次握手完成后)触发的回调函数。每个连接只会触发一次onConnect回调。
当客户端连接与Workerman断开时触发的回调函数。不管连接是如何断开的,只要断开就会触发onClose。每个连接只会触发一次onClose。
客户端代码
<?php ?> <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script> <script> function ds(){ $.get('127.0.0.1:2345',function(data,status){ console.log("Data: " + data + "nStatus: " + status); }) } // window.setInterval(ds,1000); ws = new WebSocket("ws://127.0.0.1:2345"); ws.onopen = function() { //alert("连接成功"); //ws.send('tom'); //alert("给服务端发送一个字符串:tom"); }; ws.onmessage = function(e) { //alert("收到服务端的消息:" + e.data); console.log("收到服务端的消息:" + e.data); }; </script>
以上是workerman怎么统计在线人数的详细内容。更多信息请关注PHP中文网其他相关文章!
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
<🎜>:种植花园 - 完整的突变指南
3 周前ByDDD
<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前By尊渡假赌尊渡假赌尊渡假赌
如何修复KB5055612无法在Windows 10中安装?
3 周前ByDDD
北端:融合系统,解释
3 周前By尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver Mac版
视觉化网页开发工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3汉化版
中文版,非常好用

SublimeText3 英文版
推荐:为Win版本,支持代码提示!