socket_write出错: 您的主机中软件终止了一个已建立的连接,这个问题如何处理呢?请求大佬们指点,感谢感谢!!!

解决方案 »

  1.   

    写入给客户端的数据需要进行编码处理,否则会直接异常断开转为什么编码处理呢//消息处理函数
    function frame($s) {
    $a = str_split($s, 125);
    if(count($a) == 1) {
    return "\x81" . chr(strlen($a[0])) . $a[0];
    }
    $ns = "";
    foreach($a as $o) {
    $ns .= "\x81" . chr(strlen($o)) . $o;
    }
    return $ns;
    }//发送一个 socket 消息帧给客户端
    socket_write($sock,frame($msg), strlen($msg));