我有一些代码包含 \ x00 和 \ x04 十六进制代码 ,这意味着什么?
$str= implode("\x00", $var['message']); //line 1
$id= $var['message'] . "\x04" . $id; //line 2
line1和line2 会发生什么?我希望将这些文件以二进制格式写入外部文件。
我在哪里获得这样的所有信息。
答案 0 :(得分:55)
\x
表示十六进制表示法。请参阅:PHP strings
查看ASCII table以查看0x00和0x04代表什么。
0x00 = NULL
0x04 = EOT (End of transmission)
答案 1 :(得分:8)
\ x是一种表示接下来的两个字符代表十六进制数字的方法。两个十六进制数字(每个都是4位)构成一个字节。
如果你想知道十进制版本是什么,请将左边的数字乘以16并将其加到右边的数字,记住“a”是10,“b”是11,等等。
在其他编程语言中,美元符号或序列0x也可用于标记十六进制数字。
数字可以代表任何东西。有时它们是控制代码。检查an ASCII table。
答案 2 :(得分:2)
\ x04以ASCII格式传输结束。这在大多数类C语言中都有用。
答案 3 :(得分:2)
\ x00是Null-character
\ x04是End-of-transmission-character
答案 4 :(得分:1)
\x
HH
是一个转义序列,用于描述具有该十六进制值的字节。
因此\x00
描述值为0的字节,\x04
具有值4的字节。请注意,此转义序列仅在double quoted strings中进行插值。