matrix543 / erc20-php
与任何ERC20标准以太坊代币交互
0.1.4
2022-12-07 10:56 UTC
Requires
- php: ^7.4||^8.0
- ext-bcmath: *
- matrix543/ethereum-rpc: ^0.1.5
README
与任何ERC20标准以太坊代币交互
该软件包是对历史问题(即PHP开发者无法使用本地API与ERC20代币交互,如web3js合约API)的最终回应。
该软件包直接通过RPC
(matrix543/ethereum-rpc)与Geth
通信,并在后台执行所有ABI
编码和解码,从而为开发者提供纯简单易用的API,以执行所有ERC20标准操作。
演示
- 从列表中随机选择了一个ERC20代币,提供了合约地址
0xd26114cd6EE289AccF82350c8d8487fedB8A0C07
$geth = new EthereumRPC('127.0.0.1', 8545); $erc20 = new \ERC20\ERC20($geth); $token = $erc20->token('0xd26114cd6EE289AccF82350c8d8487fedB8A0C07'); var_dump($token->name()); var_dump($token->symbol()); var_dump($token->decimals());
结果
string(8) "OMGToken"
string(3) "OMG"
int(18)
安装
composer require matrix543/erc20-php
先决条件
- PHP >= 7.4+
- 以太坊RPC客户端 (matrix543/ethereum-rpc) > 1.0
ABI
软件包中包含了标准ERC20 ABI文件,位于"data"目录中。
在构建ERC20代币对象时,可以指定自定义ABI的路径。
$geth = new EthereumRPC('127.0.0.1', 8545); $erc20 = new \ERC20\ERC20($geth); $erc20->abiPath('/path/to/abi.json');