workerman结合thinkphp怎么实时更新数据?
整合了下方法,只能当客户端连接时触发,有消息时触发,当用户断开连接时触发,那我想实时更新数据怎么办?就比我想定时向客户端发送信息或者说wokerman有没有主动触发发送数据到客户端的方法呢?
使用了定时器
但是这样写执行cli模式的时候就报错了
这样写就不报错,但是echo在cli上了,我是想发送到客户端,该怎么实现呢?
workerman结合thinkphp怎么实时更新数据?
整合了下方法,只能当客户端连接时触发,有消息时触发,当用户断开连接时触发,那我想实时更新数据怎么办?就比我想定时向客户端发送信息或者说wokerman有没有主动触发发送数据到客户端的方法呢?
使用了定时器
但是这样写执行cli模式的时候就报错了
这样写就不报错,但是echo在cli上了,我是想发送到客户端,该怎么实现呢?
其实文档写的很清楚了,要想推送消息到客户端,你就必须获取到当前连接到服务器的客户端。也就是官方文档中的connections ,然后通过循环全部发送或者指定连id这样的方式来发送信息 ,一楼兄弟给的地址是对的。
thinkphp是基于http的,本身http自身是不提供客户端和服务器间连接持续更新机制的,而且服务器端本身是不会主动向客户端传递的,所有的访问只能是服务器端响应客户端的请求。
所以实质是客户端要主动持续的进行请求
workerman是PHP socket 服务框架,而socket是可以面向连接的
要结合,想必客户端要转换为应用socket连接,而不是http连接,此外thinkphp要专为socket。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
谢邀!
真是抱歉,对于workerman我并无实际项目经验,看文档应该能实现:http://doc.workerman.net/315239