考虑:
$tag = "4F";
$ tag是一个包含两个字符“ 4”和“ F”的字符串。我希望能够将它们分别视为整个字节(4F)的上半字节和下半字节,以便继续计算位模式(01001111)
由于这些字符在技术上都是字符,因此可以将它们各自视为一个字节-ASCII表上的4为0x52,F为0x70。
几乎所有允许对字节进行操作的PHP内置函数(到目前为止,我已经看到)都是后一种描述的变体:“ 4”为0x52,而不是字节的高半字节。>
我不知道有什么快速或内置的方法可以使PHP以我想要的方式进行处理,但是感觉应该存在。
如何将字符串“ 4F”转换为字节4F,或将每个字符视为半字节对中的半字节。是否有任何内置函数可以使PHP将“ 4F”或“ 3F0E”之类的字符串作为半字节来处理?
谢谢。
答案 0 :(得分:1)
如果您想要“十六进制数字的十进制表示形式”,则hexdec
是一种选择。
如果要“十六进制位模式”,请使用base_convert
。文档甚至显示了此操作的示例:
示例#1 base_convert()示例
$hexadecimal = 'a37334';
echo base_convert($hexadecimal, 16, 2);
上面的示例将输出:
101000110111001100110100