minter / php-rlp
PHP 中的递归长度前缀编码。
v1.0.0
2020-03-11 09:01 UTC
Requires
- ext-gmp: *
Requires (Dev)
- phpunit/phpunit: ~6.0
README
PHP 中的递归长度前缀编码。
安装
设置最小稳定性为开发版本
composer require web3p/rlp
使用方法
RLP 编码
use Web3p\RLP\RLP; $rlp = new RLP; $encodedBuffer = $rlp->encode(['dog']); // to string, encoding: ascii utf8 hex $encodedBuffer->toString($encoding);
RLP 解码
use Web3p\RLP\RLP; $rlp = new RLP; $encodedBuffer = $rlp->encode(['dog']); // only accept 0x prefixed hex string $decodedArray = $rlp->decode('0x' . $encodedBuffer); // show dog echo $decodedArray[0]->toString('utf8');
API
Web3p\RLP\RLP
encode
返回给定数据的递归长度前缀编码。
encode(mixed $inputs)
混合输入 - 字符串、整数或数值字符串的数组。
示例
- 编码字符串数组。
use Web3p\RLP\RLP; $rlp = new RLP; $encodedBuffer = $rlp->encode(['web3p', 'ethereum', 'solidity']); $encodedString = $encodedBuffer;
decode
返回给定数据的递归长度前缀解码数组。
decode(string $input)
字符串输入 - 递归长度前缀编码的字符串。
示例
- 解码递归长度前缀编码的字符串。
use Web3p\RLP\RLP; $rlp = new RLP; $encodedBuffer = $rlp->encode(['web3p', 'ethereum', 'solidity']); $encodedString = $encodedBuffer; $decodedArray = $rlp->decode('0x' . $encodedString); // echo web3p echo $decodedArray[0]->toString('utf8'); // echo ethereum echo $decodedArray[1]->toString('utf8'); // echo solidity echo $decodedArray[2]->toString('utf8');
许可协议
MIT