请问phpsocket.io如何向同一个组的所有用户发布消息

计算机爱好者

现在练习phpsocket.io时发现不同房间的用户全部都可以收到信息,请求如何向一个指定组的所有用户发送消息,不在组内的就收不到???
是不是group name 所有的用户都加入相同的组名算同一个分组,还有group name 可以是数组吗例如:data和data这样
$io->to('group name')->emit('event name', $data);

3050 1 0
1个回答

phpcreeper

1、题示就像这样发送就对呢: 
$io->to('group name')->emit('event name', $data);

2、算
3、group name 组名咯只能是字符串

  • 计算机爱好者 2019-05-10

    那如果发送指定某个人,group name 这里应该怎么取巧设计??

  • phpcreeper 2019-05-10

    $io->to($socket->id)->emit();

  • 计算机爱好者 2019-05-10

    这$socket->id是每个用户连接的唯一id,但是无法区分,比如对老王发送消息,你怎么知道这个$socket->id是老王的id

  • phpcreeper 2019-05-10

    你不能那么死板啊,有一种东西 map , 每个用户你得有标识吧比如用户名,将用户名和$socket->id 映射起来,这不就解决了吗?

  • 计算机爱好者 2019-05-10

    之前我是这样做的每个用户都是$ocket->join('用户名')来标记,这样发消息直接发送到指定用户中$io->to('用户名')->emit()这样,所以我想看一下别人怎么做的

年代过于久远,无法发表回答
×
🔝