<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 如何廣播(群發)數據 ## 范例(定時廣播) ```php use Workerman\Worker; use Workerman\Lib\Timer; require_once __DIR__ . '/Workerman/Autoloader.php'; $worker = new Worker('websocket://0.0.0.0:2020'); // 這個例子中進程數必須為1 $worker->count = 1; // 進程啟動時設置一個定時器,定時向所有客戶端連接發送數據 $worker->onWorkerStart = function($worker) { // 定時,每10秒一次 Timer::add(10, function()use($worker) { // 遍歷當前進程所有的客戶端連接,發送當前服務器的時間 foreach($worker->connections as $connection) { $connection->send(time()); } }); }; // 運行worker Worker::runAll(); ``` ## 范例(群聊) ```php use Workerman\Worker; use Workerman\Lib\Timer; require_once './Workerman/Autoloader.php'; $worker = new Worker('websocket://0.0.0.0:2020'); // 這個例子中進程數必須為1 $worker->count = 1; // 客戶端發來消息時,廣播給其它用戶 $worker->onMessage = function($connection, $message)use($worker) { foreach($worker->connections as $connection) { $connection->send($message); } }; // 運行worker Worker::runAll(); ``` ## 說明: **單進程:** 以上例子只能**單進程**(```$worker->count=1```),因為多進程時多個客戶端可能連接到不同的進程中,進程間的客戶端是隔離的,無法直接通訊,也就是A進程中無法**直接**操作B進程的客戶端connection對象發送數據。(要做到這點,需要進程間通訊,比如可以使用Channel組件,例如[例子-集群發送](/315202)、[例子-分組發送](/346075))。 **建議用GatewayWorker** 在workerman基礎上開發的GatewayWoker框架提供了更方便推送機制,包括組播、廣播等,可以設置多進程甚至可以多服務器部署,如果需要給客戶端推送數據,建議使用GatewayWorker框架。 GatewayWorker手冊地址 <http://www.workerman.net/gatewaydoc/> GatewayWorker下載地址(linux版本) <http://www.workerman.net/download/GatewayWorker.zip> GatewayWorker下載地址(windows版本) <http://www.workerman.net/download/GatewayWorker-for-win.zip>
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看