使用的是php 7.0.21 环境 在将swoole_websocket_server 面向过程 写为类 启动 出现报错
PHP Fatal error: swoole_http_server::start(): require onMessage callback in /home/wwwroot/default/demo/server/ws.php on line 17<?php
class Ws
{
CONST HTOS = "0.0.0.0";
CONST POST = 8812;
public $ws = null;
public function __construct()
{
$this->ws = new swoole_websocket_server("0.0.0.0", 8812);
$this->ws->on("open", [$this,'onOpen']);
$this->ws->on("open", [$this,'onMessage']);
$this->ws->on("open", [$this,'onClose']);
$this->ws->start();
}
/**
* 监听ws链接事件
* @DateTime 2018-04-05
* @copyright [copyright]
* @license [license]
* @version [version]
* @param [$ws]
* @param [$request]
* @return [type]
*/
public function onOpen($ws,$request){
var_dump($request->fd);
}
/**
* 监听ws消息事件 收到客户端的消息
* @DateTime 2018-04-05
* @copyright [copyright]
* @license [license]
* @version [version]
* @param [type]
* @param [type]
* @return [type]
*/
public function onMessage($ws,$frame){
echo "收到了你的消息".$frame->data;
$ws->push($frame->fd, 'server-push:'.date("Y-m-d H:i:s"));
}
/**
* 关闭
* @DateTime 2018-04-05
* @copyright [copyright]
* @license [license]
* @version [version]
* @param [type]
* @param [type]
* @return [type]
*/
public function onClose($ws,$fd){
echo "关闭客户端id".$fd;
}
}
$obj = new Ws();