terranc/erc20-php

与任何 ERC20 标准/向后兼容的以太坊代币交互

0.2.7 2022-06-12 14:43 UTC

This package is auto-updated.

Last update: 2024-09-12 19:40:03 UTC


README

与任何 ERC20 标准以太坊代币交互

本包是对历史问题的终极回应,即 PHP 开发者没有可用的本地 API 来与 ERC20 代币交互(即 web3js 合约 API)。

本包依赖于 furqansiddiqui/ethereum-php 包来执行所有 ABI 编码和解码,以及通过 RPC/API 与以太坊节点通信,从而为开发者提供纯粹、简单且易于使用的 API 来执行所有 ERC20 标准操作。

演示

  • 测试与 Thether USD / USDT ERC20 智能合约的交互
$eth = new \FurqanSiddiqui\Ethereum\Ethereum();
$infura = new \FurqanSiddiqui\Ethereum\RPC\InfuraAPI($eth, "PROJECT-ID", "PROJECT-SECRET");
$infura->ignoreSSL(); // In case Infura.IO SSL errors

$erc20 = new \FurqanSiddiqui\Ethereum\ERC20\ERC20($eth);
$erc20->useRPCClient($infura);

$usdt = $erc20->token("0xdac17f958d2ee523a2206206994597c13d831ec7");
var_dump($usdt->name());
var_dump($usdt->symbol());
var_dump($usdt->decimals());
var_dump($usdt->totalSupply());
var_dump($usdt->balanceOf($eth->getAccount("ETHEREUM-ADDRESS")));

结果

string(9) "TetherUSD"
string(4) "USDT"
int(6)
string(18) "10034907979.686358"
string(12) "53150.417979"

先决条件

安装

composer require furqansiddiqui/erc20-php