在php中输出原始二进制整数

在php中输出原始二进制整数,php,binary,integer,Php,Binary,Integer,在PHP中,我有一些值为0-65535的整数变量。我需要直接回显/打印它,而不是像打印字符串“1281”那样打印字符序列,而是原始二进制值。我还需要它,这样发送到输出的二进制整数将始终正好是2个字节(如果需要,则发送零个字节,这样它始终是2个字节)。如何在php中实现这一点?是的,这是可能的,请使用。详细说明mu的答案,您需要: pack("S", $num)); 例如: 原始二进制值是电路中的一组高电压和低电压。您希望如何以人类可以感知的方式表示这些电压?实际上,您并不希望打印出字符串表示形

在PHP中,我有一些值为0-65535的整数变量。我需要直接回显/打印它,而不是像打印字符串“1281”那样打印字符序列,而是原始二进制值。我还需要它,这样发送到输出的二进制整数将始终正好是2个字节(如果需要,则发送零个字节,这样它始终是2个字节)。如何在php中实现这一点?

是的,这是可能的,请使用。

详细说明mu的答案,您需要:

pack("S", $num));
例如:


原始二进制值是电路中的一组高电压和低电压。您希望如何以人类可以感知的方式表示这些电压?实际上,您并不希望打印出字符串表示形式,您只希望打印数字的不同字符串表示形式。您要求查看以2为基数而不是以10为基数的数字。“这两种都只是电压的字符串表示形式。”丹,他要求的是原始值,而不是原始电流。他从来没有说过他不想要一个字符串,只是说他不想要一个ASCII数字字符的字符串。@Dan:他基本上想要一个PHP等效的C:
fwrite(&some\u int16\u value,sizeof(int16\u t),1,fp)
。至少在我看来是这样的。
file_put_contents("test65535.bin", pack("S", 65535));
file_put_contents("test100.bin", pack("S", 100));
file_put_contents("test0.bin", pack("S", 0));

hexdump test65535.bin
0000000 ffff
0000002

hexdump test100.bin
0000000 0064
0000002

hexdump test0.bin
0000000 0000
0000002