我需要将二进制字符串转换为十六进制字符串。此代码工作正常:
<?
$binary = "1111111111111111111111101000011111111111111111110000001000100100";
$hex = dechex(bindec($binary));
echo $hex;
?>
但是,如果我向二进制字符串添加一个额外的位(或更多位),结果将返回 0。
<?
$binary = "11111111111111111111111101000011111111111111111110000001000100100";
$hex = dechex(bindec($binary));
echo $hex;
?>
我想我可以将二进制字符串分解成块,然后在最后组合十六进制值,但是有没有更简单的方法?