rx / websocket
使用 Rx 的 PHP Websocket 库
2.2.0
2023-12-12 13:25 UTC
Requires
- ratchet/rfc6455: ^0.3
- react/event-loop: ^1.2
- react/http: 1.5.* | 1.6.* | 1.7.* | 1.8.*
- reactivex/rxphp: ^2.0.1
Requires (Dev)
- phpunit/phpunit: ^9 | ^10
README
Rx\Websocket 是一个 PHP Websocket 库。
使用方法
客户端
$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 } );
一个Echo服务器
$server = new \Rx\Websocket\Server('127.0.0.1:9191'); $server->subscribe(function (\Rx\Websocket\MessageSubject $cs) { $cs->subscribe($cs); });
将所有内容输出到控制台的服务器
$server = new \Rx\Websocket\Server('127.0.0.1:9191'); $server->subscribe(function (\Rx\Websocket\MessageSubject $cs) { $cs->subscribe(function ($message) { echo $message; }); });
安装
使用 Composer
composer require rx/websocket