PHP套接字I/O方法



在PHP中读/写TCP/IP套接字的首选方法是什么?有很多种方法可以做到这一点,包括:

  • fread()fwrite()
  • fgets()fputs()
  • file_get_contents()file_put_contents()
  • stream_get_contents()
  • stream_socket_recvfrom()stream_socket_sendto()
  • 可能还有几个我没有遇到过的

我意识到fgets()fputs()的操作有点不同(通过行而不是任意的数据块),但我真的不明白其他方法的区别,也不明白哪种方法最适合什么目的。

编辑:还有socket_recv()socket_send()

编辑#2:还有socket_read()socket_write()

使用其中许多函数,可以指定偏移量和最大长度,从而在它们之间提供大量重叠(和混淆)。然而,通常情况下,它们的使用如下所述:

  • fread、fwrite、stream_socket_recvrom、stream_slocket_send一次读取/写入特定数量的字节

  • fgets、fputs一次读/写一行

  • file_get_contents、file_put_contents和stream_get_contents一次读取/写入整个内容流。

最新更新