【发布时间】:2019-11-24 13:07:39
【问题描述】:
我的代码接收到一些带有像48656C6C6F 这样的字节字段的json,我正在尝试将它转换为像array[0] = 48, array[1]=65 ... 这样的数组中的字节对,以便处理每个字节。
其实我做了这个旁路功能是为了得到数组:
function Array_conv($hex){
$chunks = str_split($hex, 2);
$result = implode(',', $chunks);
return $result;
}
问题是,有一个正确的方法来转换为字节数组,或者像 0x48 这样的十六进制..
谢谢!
【问题讨论】:
-
你如何从你的字节字段
48656C6C6F得到array[1]=34? -
您的问题到底是什么? Yoru 代码似乎可以正常工作?我将它们作为逗号分隔值(因为您使用
implode())。 -
另外,请记住实际上有一个名为
array_chunk()的PHP 函数(你的拼写错误,这就是它起作用的原因)。您可能需要考虑一个不同的名称。 -
考虑如果长度不是两个字节对的有效对,如果字符串是
F59,你会想要0x0F和0x59作为一个值吗? -
@Qirel 我正在寻找的是一种将字节“字符串”转换为字节对的方法,以便在之后进行一些逐位操作,例如抓住第一个配对并应用一些数学运算获取第一个 GPS 坐标编号。
标签: php arrays byte converters