12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <?php
- namespace app\common\workman;
- use Workerman\Worker;
- /**
- * websocket服务器
- * Class WebSocketServer
- * @package app\common\workman
- */
- class WebSocketServer
- {
- protected $worker;//websocket实例
- /**
- * 构造方法
- * WebSocketServer constructor.
- */
- public function __construct()
- {
- }
- /**
- * 启动
- */
- public function start()
- {
- $host="websocket://0.0.0.0:23456";//定义协议和端口,后续可以放到配置中
- $this->worker=new Worker($host);
- $this->worker->count=4;
- $this->run();
- }
- /**
- * 业务方法,业务写在这里
- */
- private function run()
- {
- $this->worker->onMessage = function ($connection, $data) {
- // 向浏览器发送hello world
- $connection->send('hello world,i am server');
- /* echo date("Y-m-d H:i:s:");
- echo $data;
- echo "\n";*/
- $tlv=new Tlv();
- $result=$tlv->Read($data);
- echo "[tlv]".date("Y-m-d H:i:s:");
- print_r( $result);
- echo "\n";
- };
- Worker::runAll();
- }
- }
|