PHP 与 二进制转换

来自PHP百科全书
跳转至: 导航搜索

二进制转换的用途

  • 与C/C++/Java进行数据交互
  • 通过网络发送二进制数据
 文本字符串内容是可以直接传输和交互的,不需要任何转换

pack/unpack

在PHP中可以使用pack将整数转为二进制字串,unpack可以将二进制字串转为整数。 假设PHP中有一个变量 $int = 12345,可以通过下面的方式转为二进制。

  • pack('N', $int) 转为4字节无符号网络字节序,对应C的数据类型为uint32_t
  • pack('n', $int) 转为2字节无符号网络字节序,对应C的数据类型为uint16_t

详情参见PHP手册 http://php.net/pack

字符串格式

$str = "\x00\x0a\x10\x00" 这是一个二进制字串,\x00 是一个字节,用2个0-F的十六进制数字表示。

其他