上网搜了一下,看到 PHP 中有不少 Socket 相关函数,其使用流程是:
socket_create
socket_bind
socket_listen
socket_accept
socket_read
socket_write
socket_close
然而最没弄明白的是 socket_accept 这一步。要通过 while (true) {} 无限循环来使用。
是不是只能以 CLI 命令行方式来执行 PHP 文件了?
另外,在客户端接收和发送信息给服务器这个好像容易些,但要如何在服务端能够随意地接收和发送信息给客户端呢?(而不是像网上样例那样只在循环语句中接收、发送一次便将 socket 对象关闭结束了。
用swoole,非常好
我们已经用在了微信小程序上
php swoole扩展中的websocket可以实现实时通讯功能
首选 swoole
什么是Workerman
Workerman是一款纯PHP开发的开源高性能的PHP socket 服务器框架。被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。 支持TCP长连接,支持Websocket、HTTP等协议,支持自定义协议。拥有异步Mysql、异步Redis、异步Http、异步消息队列等众多高性能组件。
workerman或者swoole都可以。