我想知道熟悉 AMFPHP 或低级数据存储的人是否可以解释为什么整数被存储为两个字节而不是四个字节。据我所知,AMF3 协议需要一个四字节整数。序列化器中的具体代码如下:
/**
* writeInt takes an int and writes it as 2 bytes to the output stream
* 0-65535 range
*
* @param int $n An integer to convert to a 2 byte binary string
*/
function writeInt($n) {
$this->outBuffer .= pack("n", $n); // use pack with the n flag
}
我意识到这个问题可能太具体了,但是任何人都可以帮助回答我的问题吗?