2012-01-31 51 views
5

在PHP中读/写TCP/IP套接字的首选方法是什么?有这样做的,包括很多很多的方法:PHP Socket I/O方法

  • 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()

回答

3

有了这些功能中的许多功能,可以指定偏移量和最大长度,在它们之间提供了很多重叠(以及混淆)。然而,一般来说,它们如本文所述使用的:

+0

在发布之前,我已经研究了所有这些功能的手册页。我想我正在寻找更多解释为什么有5套以上的方法都可以做大致相同的事情。即使是接受偏移量/长度的函数 – FtDRbwLXw6 2012-01-31 01:09:46

+3

@drrcknlsn,因为这就是PHP所知道的。引用我们自己的Jeff Atwood PHP“就像是关键字和功能工厂的虚拟爆炸。” (http://www.codinghorror.com/blog/2008/05/php-sucks-but-it-doesnt-matter.html)有很多方法,因为人们写了很多不同的方法来做同样的事情。 – tkone 2012-01-31 01:37:01

+0

@tkone:哈哈,伟大的文章。 – FtDRbwLXw6 2012-01-31 02:15:12