我能够打开一个 PHP TCP 侦听器套接字,但我不知道如何解析缓冲区。连接到我的套接字的客户端发送一个带有附加边界数据的文本/html,以及一个 xml 文件和一个图像文件。如何解析响应以获取一侧的 XML 文件和另一侧的图像?server = socket_create_listen(8086);socket_getsockname($server, $addr, $port);if (!$server) { $message = 'Start TCP socket: Ko. Could not create socket.'; $this->logger->info($message); die($message);} else { $message = 'Start TCP socket: Ok. TCP socket opened on: ' . $addr . ':' . $port . '.'; $this->logger->info($message); while ($c = socket_accept($server)) { socket_getpeername($c, $raddr, $rport); $this->logger->info("Received Connection from $raddr:$rport\n"); $data = ''; while ($bytes = socket_recv($c, $r_data, 1024, MSG_WAITALL)) { $data .= $r_data; } //Edited: Explode with double line and got data $parsedData = explode("\r\n\r\n", $data); $xml = new \SimpleXMLElement($parsedData[2]); print_r($xml); else { echo "socket_recv() failed; reason: " . socket_strerror(socket_last_error($c)) . "\n"; } socket_close($c); }}fclose($server);
1 回答
- 1 回答
- 0 关注
- 161 浏览
添加回答
举报
0/150
提交
取消