kornrunner / rlp
PHP中的递归长度前缀编码。
0.3.6
2023-02-09 21:54 UTC
Requires
- php: ^7.1 | ^8.0 | ^8.1 | ^8.2
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ~7|~8.0|~9.0
This package is auto-updated.
Last update: 2024-09-10 01:18:57 UTC
README
PHP中的递归长度前缀编码。
安装
将最小稳定性设置为开发
composer require kornrunner/rlp
用法
RLP编码
use kornrunner\RLP\RLP; $rlp = new RLP; // c483646f67 $encoded = $rlp->encode(['dog']); // 83646f67 $encoded = $rlp->encode('dog');
RLP解码
use kornrunner\RLP\RLP; use kornrunner\RLP\Types\Str; $rlp = new RLP; $encoded = $rlp->encode(['dog']); // only accept 0x prefixed hex string $decoded = $rlp->decode('0x' . $encoded); // show 646f67 echo $decoded[0]; // show dog echo hex2bin($decoded[0]); // or you can echo Str::decodeHex($decoded[0]);
API
kornrunner\RLP\RLP
encode
返回给定输入的递归长度前缀编码。
encode(mixed $inputs)
混合输入 - 字符串、整数或数字字符串的数组。
注意:输出不是零前缀。
示例
- 编码字符串数组。
use kornrunner\RLP\RLP; $rlp = new RLP; $encoded = $rlp->encode(['kornrunner', 'ethereum', 'solidity']);
decode
返回给定数据的递归长度前缀解码数组。
decode(string $input)
字符串输入 - 递归长度前缀编码的字符串。
注意:输出不是零前缀。
示例
- 解码递归长度前缀编码的字符串。
use kornrunner\RLP\RLP; use kornrunner\RLP\Types\Str; $rlp = new RLP; $encoded = $rlp->encode(['kornrunner', 'ethereum', 'solidity']); $decoded = $rlp->decode('0x' . $encoded); // echo kornrunner echo hex2bin($decoded[0]); // echo ethereum echo hex2bin($decoded[1]); // echo solidity echo hex2bin($decoded[2]); // or you can echo Str::decodeHex($decoded[0]); echo Str::decodeHex($decoded[1]); echo Str::decodeHex($decoded[2]);
许可证
MIT