我有一些 java 服务器,我正在尝试使用 php 脚本。
该格式提供了消息将采用无符号字节的字节数,然后是组成字符串的字节数。
这是我的评论功能
function read($socket, $readnum) {
$endl = "<br>"; // It's running on apache
// attempt to get the byte for the size
$len = unpack("C",socket_read($socket, 1))[0];
// this prints "after ", but $len does not print. $endl does
echo "after " . $len . $endl;
// obviously this fails because $len isn't in a valid state
$msg = socket_read($socket, $len);
// print the message for debugging?
echo $len . " " . $msg;
return $msg;
}
我不是真正的 php 人,更多的是 Java 人,所以我不确定我应该如何获得这个长度。
应@c0le2 的要求,我进行了以下编辑
$lenarr = unpack("C",socket_read($socket, 1));
$len = $lenarr[0]; // line 81
这给出了以下错误
PHP Notice: Undefined offset: 0 in simple_connect.php on line 81