WebSocket 的 PHP 实现 - phpwebsocket

来源:互联网 发布:管理无线网络的软件 编辑:程序博客网 时间:2024/05/10 10:02



从名字上也可看出,这是一个 WebSocket 的 PHP 实现。

示例客户端代码:

1var host = "ws://localhost:12345/websocket/server.php";
2try{
3  socket = new WebSocket(host);
4  log('WebSocket - status '+socket.readyState);
5  socket.onopen    =function(msg){ log("Welcome - status "+this.readyState); };
6  socket.onmessage =function(msg){ log("Received: "+msg.data); };
7  socket.onclose   =function(msg){ log("Disconnected - status "+this.readyState); };
8}
9catch(ex){ log(ex); }
示例服务器端代码:
01log("Handshaking...");
02list($resource,$host,$origin) = getheaders($buffer);
03$upgrade = "HTTP/1.1 101 Web Socket Protocol Handshake\r\n" .
04           "Upgrade: WebSocket\r\n".
05           "Connection: Upgrade\r\n".
06           "WebSocket-Origin: ". $origin . "\r\n" .
07           "WebSocket-Location: ws://". $host . $resource . "\r\n".
08           "\r\n";
09$handshake = true;
10socket_write($socket,$upgrade.chr( ),strlen($upgrade.chr( )));
原创粉丝点击