这些表示您希望如何以二进制格式表示正在打包的数据:
so
$bin = pack("v", 1); => 0000000000000001
(16位)
where
$bin = pack("V", 1) => 00000000000000000000000000000001
(32 位)
它告诉 pack 您希望如何以二进制数据表示数据。
下面的代码将演示这一点。请注意,您可以使用不同的解包
格式来自您打包数据的格式。
<?php
$bin = pack("S", 65535);
$ray = unpack("S", $bin);
echo "UNSIGNED SHORT VAL = ", $ray[1], "\n";
$bin = pack("S", 65536);
$ray = unpack("S", $bin);
echo "OVERFLOW USHORT VAL = ", $ray[1], "\n";
$bin = pack("V", 65536);
$ray = unpack("V", $bin);
echo "SAME AS ABOVE BUT WITH ULONG VAL = ", $ray[1], "\n";
?>