📜  php 将字符串打印为字节 - PHP (1)

📅  最后修改于: 2023-12-03 15:33:37.500000             🧑  作者: Mango

PHP 将字符串打印为字节

在 PHP 中,可以使用 bin2hex() 函数将字符串转换为十六进制字符串。 然而,如果您需要打印字符串的实际字节,则可以使用 unpack() 函数。 该函数将二进制字符串解包并返回包含每个字节的数组。

以下是使用 unpack() 函数将字符串打印为字节的示例代码:

$string = 'Hello, world!';
$bytes = unpack('C*', $string);
foreach ($bytes as $byte) {
    echo sprintf("%02x ", $byte);
}

解释:

  • 在第1行中,我们定义了一个 string 变量 $string,它包含要打印为字节的字符串数据。
  • 在第2行中,我们使用 unpack() 函数将二进制字符串打包为一个包含每个字节的数组 $bytesC* 表示按照字节解包该字符串,并返回无符号的字符数组。
  • 在第3行中,我们使用 foreach 循环遍历数组 $bytes。每个字节的十六进制表示使用 sprintf() 函数进行格式化,然后使用 echo 函数打印出来。

以上代码将输出以下内容:

48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21

这些就是 $string 中的每个字节的十六进制表示。

希望这可以帮助您了解如何在 PHP 中将字符串打印为字节。