首頁  >  文章  >  php框架  >  workerman怎麼運作

workerman怎麼運作

(*-*)浩
(*-*)浩原創
2019-12-12 09:23:182776瀏覽

workerman怎麼運作

先下載workerman  https://www.workerman.net/download                       1( #下載好後在workerman檔案下建立一個新的檔案start.php

workerman怎麼運作

#程式碼如下workerman怎麼運作

<?php
use Workerman\Worker;
 
//Autoloader.php路径
require_once "./Autoloader.php";
 
$global_uid = 0;
 
// 当客户端连上来时分配uid,并保存连接,并通知所有客户端
function handle_connection($connection)
{
    global $text_worker, $global_uid;
    // 为这个连接分配一个uid
    $connection->uid = ++$global_uid;
}
 
// 当客户端发送消息过来时,转发给所有人
function handle_message($connection, $data)
{
    global $text_worker;
    foreach($text_worker->connections as $conn)
    {
        $conn->send("user[{$connection->uid}] said: $data");
    }
}
 
// 当客户端断开时,广播给所有客户端
function handle_close($connection)
{
    global $text_worker;
    foreach($text_worker->connections as $conn)
    {
        $conn->send("user[{$connection->uid}] logout");
    }
}
 
// 创建一个文本协议的Worker监听2000接口  用0.0.0.0方便链接内网外网
$text_worker = new Worker("websocket://0.0.0.0:2000");  
 
// 只启动1个进程,这样方便客户端之间传输数据
$text_worker->count = 1;
 
$text_worker->onConnect = &#39;handle_connection&#39;;
$text_worker->onMessage = &#39;handle_message&#39;;
$text_worker->onClose = &#39;handle_close&#39;;
 
Worker::runAll();

然後命令列執行   php start.php start

#

以上是workerman怎麼運作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn