BIN2HEX& PHP中的HEX2BIN Convesion

时间:2016-08-31 13:52:41

标签: php binary hex type-conversion

我想将48位二进制数(字符串格式)转换为HEX(12个字符长)。反之亦然。

例如

  • binary&00; 000000000000000000000000000000000000000000000000'进入十六进制&00; 00000000000'
  • 二进制' 111111111111111111111111111111111111111111111111'到十六进制' FFFFFFFFFFFF'
  • hex' FFFFFFFFFFFF'二进制' 111111111111111111111111111111111111111111111111'
  • hex&00; 00000000000'二进制&00; 000000000000000000000000000000000000000000000000'


试过默认的bin2hex(),dechex(bindec($ binary))等。

我是新手,所以请详细解释。

1 个答案:

答案 0 :(得分:1)

dechex(bindec($binary))应该没问题,但你没有说出问题所在。

但从根本上说,hex2bin用于编码二进制数据,而不是二进制数据。为简单起见,您可能希望坚持使用内置的base_convert函数,例如。

echo base_convert('FFFFFFFFFFFF', 16, 2);
// 111111111111111111111111111111111111111111111111

echo base_convert('111111111111111111111111111111111111111111111111', 2, 16);
// ffffffffffff

请注意,对于“零”示例,您只需返回一个零。在我所知的任何基础系统中,没有真正的长度概念,数字为零。