寫了個(gè)聊天室,只用到了workerman,
想在來(lái)消息時(shí)候進(jìn)行全員廣播,發(fā)現(xiàn)只有某一個(gè)客戶端收的到信息
$worker->onMessage = function($conn,$data) use ($worker,$mongo){
if(!$data)
{
return;
}
$json_arr = BaseJson::decode($data);
foreach($worker->connections as $connection){
switch($json_arr){
case 'pong':
case 'login':
// $msg = $mongo->find('chatmsg', );
// $json = ;
// $connection->send(BaseJson::encode($json));
return;
case 'say':
$content = $json_arr;
$time = date('Y-m-d H:i:s');
$json = ;
$mongo->insert('chatmsg', $json);
$connection->send(BaseJson::encode($json));
return;
}
}
};
前臺(tái)
ws.onmessage = function(evt)
{
var obj = (JSON.parse(evt.data));
if(obj.type=='statistics'){
$('#people_num').html(obj.total_conn_person);
}else if(obj.type=='showsay'){
$('#ct').append(
'<div>"'+obj.content+'" "'+obj.time+'"</div>'
);
console.log(obj);
}
};