PHP中\ x00,\ x04的含义是什么?

时间:2009-07-25 19:15:09

标签: php binaryfiles

我有一些代码包含 \ x00 \ x04 十六进制代码 ,这意味着什么?

$str= implode("\x00", $var['message']); //line 1
$id= $var['message'] . "\x04" . $id;    //line 2

line1和line2 会发生什么?我希望将这些文件以二进制格式写入外部文件。

我在哪里获得这样的所有信息。

5 个答案:

答案 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)

答案 4 :(得分:1)

\x HH 是一个转义序列,用于描述具有该十六进制值的字节。

因此\x00描述值为0的字节,\x04具有值4的字节。请注意,此转义序列仅在double quoted strings中进行插值。