我正在尝试该unpack
功能。PHP文档说
根据给定的格式从二进制字符串解包到数组中。
传递的字符串是否必须是二进制字符串?究竟什么是二进制字符串?
A binary string
just 表示其基本二进制格式的数据。如果您在哪里回显它,它自身的数据将作为字符串显示给您,但是如果不对其应用正确的结构,它将毫无意义。例如,一个数字看起来不像一个数字,因为它是二进制的。虽然数据在那里,但必须将其解析为数字才能将其作为数字读取,否则它可能看起来像“abcd”。
如果您进一步阅读,您将看到二进制字符串的示例
$binarydata = "\x32\x42\x00\xa0";
该方法的描述也清楚地说明了Unpacks from a binary string
,所以是的,它需要一个二进制字符串。
有关二进制的更多信息