轻松学会Workerman实战

初识GatewayWorker框架

此课程是收费课程,请先购买或加入会员后再访问。

GatewayWorkerworkerman的框架,它里面封装了很多好用的方法,比直接使用workerman要方便的多。尤其在和其他MVC框架对接时,就更加的方便了。

linux和Mac os用户下载,http://www.workerman.net/download/GatewayWorker.zip
windows用户下载http://www.workerman.net/download/GatewayWorker-for-win.zip

GatewayWorker下载下来后,需要关注的只有一个文件,就是Applications/YourApp/Events.php,所有程序业务逻辑都在这里。

打开后里面已经默认有了一些代码,它其实这里已经实现了一个简单的聊天功能了,我们稍后再来分析它这里的代码。

先跑起来再说

使用websocket协议

打开Applications/YourApp/start_gateway.php,修改第21行,将协议改为websocket。其他什么都不需要动了哦。

$gateway = new Gateway("websocket://0.0.0.0:7272");

页面

直接将上一节课程所新建的index.html复制过来,什么都不用修改。

启动

进入项目目录,启动一下服务

php start.php start

windows用户特别注意
1. 请直接双击项目目录的start_for_win.bat启动服务,跑命令是没用的。
2. 如果发现窗口一闪而过,并且提示说php没找到什么的。那你需要配置一下php的环境变量
3. 如果console中提示连接不上,请修改js代码中连接websocket部分为ws://127.0.0.1:7272
4. 启动之前,请务必将之前学习workerman项目的服务按 ctrl + c 停止掉,不然会出现冲突。

打开index.html,发消息试试,发现所有的功能依然是可以使用的。

分析代码

方法、参数 意义
onConnect 当客户端连接时
onMessage 当客户端发来消息时
onClose 当用户断开连接时
$client_id 每个连接上来的客户端,GatewayWorker都会自动生成一个全局唯一的识别id
sendToClient 发送消息给指定的人
sendToAll 发送消息给所有人

这个代码看着还是很简单的,也很好理解。那我们下一集就要来使用它和laravel框架做对接了,实现一个完善的聊天室功能。


现在就注册ITFun.tv会员
持续关注IT界最新技术,随时更新相关课程。在线学习IT课程或直接报名参加线下武汉PHP、Web前端培训。

仅仅30秒钟就可以简单注册

会员注册(免费)
×