php函数pack()返回的字符串是什么 php binary string

原创
2019/08/29 18:24
阅读数 154

php函数pack()返回的字符串是什么?

// 'd' double 占用8个字节
$data = pack('d', 3.1415);

// dd函数见 Symfony\VarDumper
dd($data)

输出: 
    b"o\x12ƒÀÊ!\t@"

完全看不懂啊!

$i = 0;
dd(
    $data[$i++],
    $data[$i++],
    $data[$i++],
    $data[$i++],
    $data[$i++],
    $data[$i++],
    $data[$i++],
    $data[$i++]
);

输出:
"o"
"\x12"
b"ƒ"
b"À"
b"Ê"
"!"
"\t"
"@"

对照assic表对比, 无对应可显符号则显示十六进制.

  十进制 十六进制 符号
"o" 79 6FH o
"\x12" 18 12H  
b"ƒ" 131 83H ƒ
b"À" 192 C0H À
b"Ê" 202 CAH Ê
"!" 33 21H !
"\t" 9 09H \t
"@" 64 40H @

再看看bin2hex函数

dd(bin2hex($data));

输出:
"6f1283c0ca210940"

对应assic表的十六进制这一列

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部