rx/websocket

Websockets for PHP using Rx

Maintainers

👁 mbonneau

Package info

github.com/RxPHP/RxWebsocket

pkg:composer/rx/websocket

Statistics

Installs: 182 627

Dependents: 5

Suggesters: 0

Stars: 34

Open Issues: 3

2.3.0 2025-10-27 18:58 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT f20d621cea4353e24b2bb4a3225b164bfc4b6a04

  • Matt Bonneau <matt.woop@bonneau.net>
  • David Dan <davidwdan.woop@gmail.com>

websocketWebSocketsreactreactiverxrfc6455rx.phprxphp


README

👁 CI status

Rx\Websocket is a PHP Websocket library.

Usage

Client

$client = new \Rx\Websocket\Client('ws://127.0.0.1:9191/');

$client->subscribe(
 function (\Rx\Websocket\MessageSubject $ms) {
 $ms->subscribe(
 function ($message) {
 echo $message . "\n";
 }
 );

 $sayHello = function () use ($ms) {
 $ms->onNext('Hello');
 };

 $sayHello();
 \EventLoop\addPeriodicTimer(5, $sayHello);
 },
 function ($error) {
 // connection errors here
 },
 function () {
 // stopped trying to connect here
 }
);

An Echo Server

$server = new \Rx\Websocket\Server('127.0.0.1:9191');

$server->subscribe(function (\Rx\Websocket\MessageSubject $cs) {
 $cs->subscribe($cs);
});

Server that dumps everything to the console

$server = new \Rx\Websocket\Server('127.0.0.1:9191');

$server->subscribe(function (\Rx\Websocket\MessageSubject $cs) {
 $cs->subscribe(function ($message) {
 echo $message;
 });
});

Installation

Using composer:

composer require rx/websocket