如何主动推送消息

1、可以用定时器定时推送数据

  1. use Workerman\Worker;
  2. use Workerman\Timer;
  3. use Workerman\Connection\TcpConnection;
  4. require_once __DIR__ . '/vendor/autoload.php';
  5. $worker = new Worker('websocket://0.0.0.0:1234');
  6. // 进程启动后定时推送数据给客户端
  7. $worker->onWorkerStart = function($worker){
  8. Timer::add(1, function()use($worker){
  9. foreach($worker->connections as $connection) {
  10. $connection->send('hello');
  11. }
  12. });
  13. };
  14. Worker::runAll();

2、其它项目中发生某个事件时通知workerman推送数据 参见 常见问题-在其它项目中推送