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

46

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

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

我想将行1和行2二进制格式写入外部文件,这时会发生什么情况呢?

我从哪里可以获取所有这样的信息呢?

5个回答

67

\x表示十六进制符号。请参考:PHP字符串

可以查看ASCII表以了解0x00和0x04代表什么。

0x00 = NULL
0x04 = EOT (End of transmission)

13

\x 是一种表示下两个字符为十六进制数的方式。每两个十六进制数(每个数4位)组成一个字节。

如果你想知道十进制版本是多少,将左边数字乘以16再加上右边数字即可,记住“a”是10,“b”是11等等。

在其他编程语言中,也可以使用美元符号或序列0x来标识十六进制数字。


这些数字可以代表任何东西。有时它们是控制代码。请查看ASCII表


4

2

\x04是ASCII码中的传输结束符。在大多数类C语言中都适用。


1

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

因此,\x00 描述了值为0的字节,\x04 描述了值为4的字节。请注意,这个转义序列只在双引号字符串中插值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接