workerman + thinkphp制作简易聊天室的示例

  介绍

这篇文章主要介绍了workerman + thinkphp制作简易聊天室的示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

1:环境在窗下面的,thinkphp3.2

2:下载GatewayWork,放到

 workerman + thinkphp制作简易聊天室的示例

目录下

3:然后双击打开

 workerman + thinkphp制作简易聊天室的示例

这个文件开启服务

4:所有的逻辑均在

 workerman + thinkphp制作简易聊天室的示例

事件。php这个文件里面

5:当用户连接到服务器时,触发

 workerman + thinkphp制作简易聊天室的示例

,初始化,发送client_id

6:收到消息时,

 workerman + thinkphp制作简易聊天室的示例

出发了这个方法,消息,就是客户端发送过来的数据

7:附上代码

/* *   *大敌;当客户端发来消息时触发   ,* @param  int  client_id 美元;连接id   ,* @param  mixed  message 美元;具体消息   ,*/public  static  function  onMessage (client_id美元,美元消息)   {   ,,,,//1:收到消息之后转成数组()   ,,,,data 美元;=,json_decode(美元消息,真的);   ,,,,如果(! $ data) {   ,,,,,,返回;   ,,,,}   ,,,,//2:判断类型,绑定是client_id与用户id绑定,   ,,,,//say 发送消息的事件   ,,,,switch  ($ data[& # 39;类型# 39;]),{   ,,,,,,//绑定   ,,,,,,case  & # 39;结合# 39;:   ,,,,,,,,,,from_id 美元;=,$ data [& # 39; from_id& # 39;];   ,,,,,,,,,,//把获取的到用户id与client_id进行绑定   ,,,,,,,,,,网关:bindUid (client_id, from_id美元);   ,,,,,,,,,,返回;   ,,,,,,//发送文字消息   ,,,,,,case  & # 39;说# 39;:   ,,,,,,,,,,//获取到客户端传过来的信息   ,,,,,,,,,,text 美元;=,$ data[& # 39;数据# 39;];   ,,,,,,,,,,from_id 美元;=,$ data [& # 39; from_id& # 39;];   ,,,,,,,,,,to_id 美元;=,$ data [& # 39; to_id& # 39;];   ,,,,,,,,,,//封装消息   ,,,,,,,,,,info 美元;=,阵列(   ,,,,,,,,,,,,& # 39;类型# 39;=祝辞& # 39;文本# 39;   ,,,,,,,,,,,,& # 39;数据# 39;=在文本,美元   ,,,,,,,,,,,,& # 39;from_id& # 39;=祝辞from_id美元,   ,,,,,,,,,,,,& # 39;to_id& # 39;=祝辞to_id美元,   ,,,,,,,,,,,,& # 39;时间# 39;=祝辞日期(& # 39;Y-m-d  h:我:& # 39;,时间()),   ,,,,,,,,,,);   ,,,,,,,,,,网关:sendToUid (to_id美元,json_encode ($ info));   ,,,,,,,,,,返回;   ,,,,,,//发送图片   ,,,,,,case  & # 39; img # 39;:   ,,,,,,,,,,from_id 美元;=,$ data [& # 39; from_id& # 39;];   ,,,,,,,,,,to_id 美元;=,$ data [& # 39; to_id& # 39;];   ,,,,,,,,,,img 美元;=,$ data [& # 39; img # 39;];   ,,,,,,,,,,//封装消息   ,,,,,,,,,,info 美元;=,阵列(   ,,,,,,,,,,,,& # 39;类型# 39;=祝辞& # 39;img # 39;   ,,,,,,,,,,,,& # 39;数据# 39;=祝辞img美元,   ,,,,,,,,,,,,& # 39;from_id& # 39;=祝辞from_id美元,   ,,,,,,,,,,,,& # 39;to_id& # 39;=祝辞to_id美元,   ,,,,,,,,,,,,& # 39;时间# 39;=祝辞日期(& # 39;Y-m-d  h:我:& # 39;,时间()),   ,,,,,,,,,,);   ,,,,,,,,,,网关:sendToUid (to_id美元,json_encode ($ info));   null   null   null   null   null   null

workerman + thinkphp制作简易聊天室的示例