1.环境
windows+php7+tp5.1
2.安装workerman
cmd进入你的tp5.1项目根目录下,按照TP官网输入composer require topthink/think-worker=2.0.*
安装完成后启动worker服务
php think worker:server
看到下图则说明安装成功了
3.测试一下
打开worker的配置文件,config/worker_server.php可以按照自己的需求配置
测试一下是否真的可以使用了,在worker_server.php中找到onConnect的回调,加上
这里我使用的是websocket协议,下图第一行配置
随便打开一个html页面,写上一段JS代码
var socket = new WebSocket("ws://127.0.0.1:2345");
socket.onmessage = function(res){
alert(res.data)
}
对了,在此之前你要重启一下worker服务,因为你修改过配置文件,否则不生效。
网页打开页面,如下图
说明连接成功。
再改一下worker_server.php,将onMessage中的代码改为
html页面的代码改为
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>demo</title>
</head>
<input type="text" id="text">
<button onclick="sendMsg()">发送消息</button>
<body>
<script>
var socket = new WebSocket("ws://127.0.0.1:2345");
socket.onmessage = function(res){
alert(res.data)
}
function sendMsg(){
var msg = document.getElementById('text').value;
socket.send(msg);
}
</script>
</body>
</html>
再来测试一下,在文本框随便输入文字,点发送(在此之前你还得重启一下worker服务)
简单的收发消息就实现了