首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >定期向所有客户端发送数据

定期向所有客户端发送数据
EN

Stack Overflow用户
提问于 2017-02-07 20:51:25
回答 1查看 763关注 0票数 1

我正在使用WorkermanPHPSocketIO,并试图弄清楚如何定期将数据发送到指定的服务器。由于某些原因,我可以在Javascript中做得很好,但我需要从PHP向所有连接的客户端发送通知。我曾尝试使用独立函数连接到服务器,并通过标准的“消息”通知它,但由于某种原因,它什么也不做。

代码语言:javascript
复制
<?php

require_once __DIR__ . '/vendors/autoload.php';
use Workerman\Worker;
use PHPSocketIO\SocketIO;

static $_TERMINATE_TIME = 61;
static $_CHECK_DATA = 3;

$io = new SocketIO(1234);
$io->on('connection', function($socket){
    $socket->addedUser = false;
    echo 'New user connected' . PHP_EOL;
    $socket->broadcast->emit('message', array(
        'data'=> array('test' => 1, 'blah' => 2)
    ));
    $socket->on('message', function ($data)use($socket){
        $socket->broadcast->emit('message', array(
            'data' => array('test' => 1, 'blah' => 2)
        ));
    });
});

function HasData()
{
    echo 'Need to send server-side data to all clients ...' . PHP_EOL;
}

// Need to send notifications from the server every N seconds
\Workerman\Lib\Timer::add($_CHECK_DATA, 'HasData', null, true);
// Self-destruct server after K seconds
\Workerman\Lib\Timer::add($_TERMINATE_TIME, function() {Worker::stopAll();}, null, false);

Worker::runAll();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-12 01:30:07

由于PHP没有现成的解决方案可以让我连接并请求websocket服务器通知所有客户端,我们决定用clsssic JavaScript乒乓和数据检索来解决。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42090379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档