我有一些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
+1,但自5.4以來,您可以使用解除引用,例如'f()[1]' –
這非常好,只給我提供瞭解決問題所需的信息。謝謝! – corsiKa