4

我尝试使用 PHP 套接字创建从 ac# 应用程序到 PHP 5.3 脚本的 tcp/ip 套接字连接。c# 应用程序应将 JSON 字符串发送到 PHP 脚本。

我关于socket_read 手册的问题:它们是什么意思:

"PHP_BINARY_READ (Default) - use the system recv() function.
Safe for reading binary data."

PHP_BINARY_READ 究竟是什么,为什么在使用这个参数时我应该使用 recv() 函数?

非常感谢任何帮助。

4

2 回答 2

5

重要的部分是文档对其他选择的说明:

  • PHP_NORMAL_READ - 阅读停止在\n\r

选择PHP_NORMAL_READ您的套接字是否是面向行的文本协议。PHP_BINARY_READ如果您的插座是其他东西,请选择。

于 2012-03-15T23:32:12.223 回答
4

这意味着当您使用 PHP_BINARY_READ 时,此系统调用将用于从底层套接字读取。通过将其与读取的替代方案进行对比来解释有关二进制数据安全性的评论

PHP_NORMAL_READ - 读取在 \n 或 \r 处停止。

因此,如果您想一次读取一行,请使用 PHP_NORMAL_READ。否则,使用 PHP_BINARY_READ (默认)。

于 2012-03-15T23:30:57.270 回答