注:安装workerman 之前要选装composer
1、第一步访问官方网址下载workerman,网址如下:https://www.workerman.net/
2、下载解压后,我将文件夹名更改为“workerman”,打开目录,新建“start.php”文件,页面如下
3、start.php 内容如下:
<?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 = 'handle_connection';
$text_worker->onMessage = 'handle_message';
$text_worker->onClose = 'handle_close';
Worker::runAll();
4、将workerman 文件放在任意盘中,我这里放在D盘根目录,页面如下:
5、输入cmd打开命令面板,打开start.php 文件,操作命令及页面如下:
1、D:
2、cd workerman
3、php start.php start
6、浏览器测试是否成功:找开谷歌或搜狗浏览器(任意浏览器),按F12键,打开console输入以下内容并按回车键,若有弹框则证明成功。
ws = new WebSocket("ws://127.0.0.1:2000");
ws.onopen = function() {
alert("连接成功");
ws.send('tom');
alert("给服务端发送一个字符串:tom");
};
ws.onmessage = function(e) {
alert("收到服务端的消息:" + e.data);
};