Membuat pelayan WebSocket dalam PHP boleh mencabar, terutamanya apabila menggunakan perpustakaan lapuk atau buggy. Walaupun banyak percubaan, kod yang diberikan dalam soalan gagal mewujudkan sambungan, mengakibatkan ralat: "Firefox tidak dapat mewujudkan sambungan ke pelayan di ws://localhost:12345/."
Untuk mengatasi isu ini, pertimbangkan langkah berikut:
Kod PHP berikut menyediakan contoh mudah pelaksanaan pelayan WebSocket menggunakan Ratchet:
<code class="php">use Ratchet\MessageComponentInterface; use Ratchet\ConnectionInterface; class MyWebSocketHandler implements MessageComponentInterface { private $clients; public function __construct() { $this->clients = new SplObjectStorage; } public function onOpen(ConnectionInterface $conn) { // Send a welcome message to the client $conn->send('Welcome to the WebSocket server!'); // Add the client to the collection $this->clients->attach($conn); } public function onMessage(ConnectionInterface $from, $msg) { // Send the message to all connected clients foreach ($this->clients as $client) { $client->send($msg); } } public function onClose(ConnectionInterface $conn) { // Remove the client from the collection $this->clients->detach($conn); } public function onError(ConnectionInterface $conn, \Exception $e) { // Handle errors $conn->close(); } }</code>
Mencipta pelayan WebSocket dalam PHP memerlukan pemahaman yang mendalam tentang protokol WebSocket dan pelaksanaan yang betul bagi ciri-cirinya. Dengan mengikut langkah yang dibentangkan dan memanfaatkan perpustakaan yang boleh dipercayai, adalah mungkin untuk mewujudkan pelayan WebSocket yang teguh yang memudahkan komunikasi masa nyata.
Atas ialah kandungan terperinci Mengapakah pelayan PHP WebSocket saya gagal mewujudkan sambungan dan menunjukkan ralat \'Firefox tidak dapat mewujudkan sambungan ke pelayan di ws://localhost:12345/\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!