代码之家  ›  专栏  ›  技术社区  ›  erotsppa

在套接字关闭之前,不会刷新对套接字的写入。如何改变?

  •  3
  • erotsppa  · 技术社区  · 16 年前

    在套接字关闭之前,不会刷新对套接字的写入。如何改变?每次写完后我都要冲洗。

    我试过:


    2) fflush()
    3) ob\u implicit\u flush(真);

    这些都不起作用,我仍然不得不退出php,让socket接收数据。


    包括一些示例代码,有什么问题吗?

    while($clientSocket = socket_accept($this->serviceConnection))
        {                              
            while( $clientMessage = socket_read($clientSocket, 1024)     )                     
            {                  
                echo 'Relaying message to server: ' . $clientMessage;
                if( !fwrite($this->Connection, $clientMessage) )
                    echo 'Error writing to server'; 
                fflush($this->Connection);
            }
            socket_close($clientSocket);
        }
    
    1 回复  |  直到 16 年前
        1
  •  6
  •   Byron Whitlock    16 年前

    这是一个函数! fflush($rc)

    你确定你有正确的资源作为参数吗?

    编辑

    可以。查看您的代码,您正在使用套接字函数。你需要使用fsockopen,fwrite,fflush,fsockclose。你的代码应该是一样的,但是你可以刷新输出。看看这个例子 in the php manual

    推荐文章