PHP에서 Websocket 서버를 만드는 방법
백그라운드
WebSocket은 전이중 통신을 제공합니다. , 기존 HTTP 연결을 통한 클라이언트와 서버 간의 실시간 통신 채널입니다. PHP에서는 여러 프레임워크가 WebSocket 서버 생성을 지원합니다.
PHPWebSocket 코드
phpwebsocket 라이브러리를 업데이트하는 데 어려움이 있다고 언급하셨습니다. 한때 인기가 있었지만, 시대에 따라 문제가 발생할 수 있습니다. 대체 방법은 다음과 같습니다.
서버용 PHP 코드
<code class="php"><?php // Create WebSocket server on localhost:12345 $master = WebSocket("localhost", 12345); // Initialize sockets and user arrays $sockets = array($master); $users = array(); while (true) { $changed = $sockets; socket_select($changed, $write = NULL, $except = NULL, NULL); foreach ($changed as $socket) { if ($socket == $master) { // Handle new client connections $client = socket_accept($master); if ($client < 0) { echo "socket_accept() failed\n"; continue; } else { connect($client); } } else { // Handle incoming data from clients $bytes = @socket_recv($socket, $buffer, 2048, 0); if ($bytes == 0) { disconnect($socket); } else { $user = getuserbysocket($socket); if (!$user->handshake) { dohandshake($user, $buffer); } else { process($user, $buffer); } } } } }</code>
클라이언트용 JavaScript 코드
<code class="javascript">var connection = new WebSocket('ws://localhost:12345'); connection.onopen = function () { connection.send('Ping'); // Send 'Ping' message to server }; // Log errors connection.onerror = function (error) { console.log('WebSocket Error ' + error); }; // Log messages from server connection.onmessage = function (e) { console.log('Server: ' + e.data); };</code>
Firefox 문제 해결
오류 메시지에 따르면 지정된 URL에서 서버에 액세스하지 못할 수 있습니다. 다음을 확인하세요.
추가 팁
위 내용은 질문은 다음과 같습니다: phpwebsocket에 대한 대체 방법을 사용하여 PHP에서 WebSocket 서버를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!