uran1980 / erc20-php
与任何ERC20标准的以太坊代币进行交互
0.1.6
2020-09-12 19:51 UTC
Requires
- php: >=7.1.0
- ext-bcmath: *
- uran1980/ethereum-rpc: ^0.1.6
README
与任何ERC20标准的以太坊代币进行交互
此包是对PHP开发者无法使用原生API与ERC20代币交互(即web3js合约API)这一历史问题的高度回应。
此包直接通过 RPC
(uran1980/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 uran1980/erc20-php
先决条件
- PHP >= 7.1+
- 以太坊RPC客户端 (uran1980/ethereum-rpc) > 1.0
ABI
在“data”目录中包含了一个标准的ERC20 ABI文件。
在构建ERC20代币对象时可以指定自定义ABI的路径。
$geth = new EthereumRPC('127.0.0.1', 8545); $erc20 = new \ERC20\ERC20($geth); $erc20->abiPath('/path/to/abi.json');