2

我使用 getplicationlog 分析具有 InvocationTransaction 类型的事务,并获得一个数据数组作为响应

array(2) {
    ["type"]=> string(9) "ByteArray"
    ["value"]=> string(40) "0631901fb121f633fa496d3689649a06628f63c8"
}

帮帮我,如何在 PHP 中将 ByteArray 转换为 NEO 地址?

4

1 回答 1

0

我不完全确定,但您可以尝试使用用户在 php.net 中提交的convBase()函数。用法如下:

echo 
  convBase(
   "0631901fb121f633fa496d3689649a06628f63c8", // hex data 
   "0123456789ABCDEF", // hex alphabet
   "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); // base58 alphabet

输出:

61Gh7hAazfnmUqVvE5najukwNBq

但是我怀疑您的十六进制数据可能会被截断或传递给一些额外的压缩/加密方案,因为典型的 NEO 地址在转换为 base16 时会保留
25 bytes并且您只有20 bytes- 所以肯定还有其他事情发生

于 2018-10-05T09:07:58.913 回答