socket.io client php客户端

  1. 引入socket.io

composer require “workerman/phpsocket.io”

  1. 服务代码server.php 基于thinkphp框架

php server.php start //启动服务命令

// 加载基础文件
require __DIR__ . '/../thinkphp/base.php';
use PHPSocketIO\SocketIO;
use Workerman\Worker;
// 执行应用并响应(绑定)
//Container::get('app')->bind('socketio/Server')->run()->send();

// 在2021端口创建服务
$io = new SocketIO(2021);
$io->on('connection', function($socket)use($io){
   
    var_dump($socket->request->_query);
    var_dump($socket->id);
    $socket->on('chat message', function($msg)use($io){
   
        $io->emit('chat message', $msg);
    });
    $socket->on('broadcast', function($msg)use($io){
   
        var_dump($msg);
        $msg = json_decode($msg,true);
        var_dump($msg);
        $io->to($msg['fid'])->emit('sendMsg', ['event'=>'broadcast','data'=>$msg['data']]);
    });
    // 监听到新的客户端连接即在服务端输出'new connection'
    echo 'new connection'."\n";
    // 并向服务端发送'连接成功'
    //$socket->emit('success', '连接成功123131');

    // 服务端发送消息过来
    $socket->on('sendMsg', function($msg)use($io,$socket){
   
        // 在服务端输出消息
        echo $msg."\n";
        // 在收到的消息前面拼接'收到'后向客户端发送回去
        //$io->to($socket->id)->emit('sendMsg', '收到"'.$msg.'"');
        $io->emit('sendMsg', '收到"'.$msg.'" fid='.$socket->id);
        // 将接受到的消息存储到数据库
        $data[
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值