当前位置: 旋风说(旋风PHPer分享网)> 技术文章> 正文
一、首先最好是使用composer去下载类库,这样简单、方便,如果真没有我可以把类库下载下来放到下面。
1、在项目coposer.json中添加
"aiwozhe/ethereum-client": "^1.1",
"aiwozhe/web3": "^2.0",
"kornrunner/ethereum-offline-raw-tx": "^0.2",
以上三个直接在命令行里执行:composer update
krowinski/bcmath-extended
这四个库是需要用到的,第四个我忘了什么版本了,你可以直接在命令行里写 coposer require krowinski/bcmath-extended,这样会下载最新版本。
附件:
2、然后就是一些主体的内容,我把写好的几个文件放到下面,这几个文件都放到项目里面能调用的地方,方便使用,要注意文件里的代码肯定需要修改,一些报错机制,命名空间等等都要改成自己所需要的。
文件:
这几个文件简单介绍一下,Defines.php主要是定义一些变量的文件;EthereumCallback.php是方法的回调文件可以简单的看一下;ethereumTrait.php这个文件是主要的逻辑文件,可以深入的研究一下,咱们现在只是用了里面几个方法;Heco.php这个文件可以说是这几个文件的入口,只要你的命名空间对,那么你项目里想查余额或者转账等操作只要引进这个文件,EthereumTrait.php里面的方法都可以调用。
3、PHP需要7.1+,并且安装gmp拓展
二、到这一步基本上需要的文件都齐了,接下来可以开始我们的项目了。
1、创建账户地址
上面绿框里的是几个调用示例,先说createAccount(),看下图调用(图中最顶上的箭头有错误):
访问地址是在Heco.php里面设置的,https://docs.hecochain.com/#/mainnet(这个地址是火币文档地址,里面有测试网地址和主网地址可以查询)。
返回数据就是一个地址和私钥,正式网的话要记好记住了,查询和转账都会用到。
2:查询火币余额,查询合约(以usdt为例)
查询火币:
Heco::balance('0x3666331af85dd64bf7d7201c1cafdf2b50d3470d',false);
查询usdt
Heco::balanceOf('usdt','0x3666331af85dd64bf7d7201c1cafdf2b50d3470d',false)
在查询余额之前,如果是测试网可以去下面的地址去领取测试币(https://scan-testnet.hecochain.com/faucet)(每个账号每个ip一天只能领取一次),领取之后就可以尽情的测试了。
3:转账ht,转账usdt
转账HT
Heco::transfer("0x3666331af85dd64bf7d7201c1cafdf2b50d3470d", 'c543ecaf16d6abf66cccf92f238ee6ce2b0d27bd0ecdec7a90bd662190e7699f', '0xb1bb2cc2276ebfeafb83ffab5da238ebde6f2cf4', '0.01')
转账usdt
Heco::transfer("0x3666331af85dd64bf7d7201c1cafdf2b50d3470d", 'c543ecaf16d6abf66cccf92f238ee6ce2b0d27bd0ecdec7a90bd662190e7699f', '0xb1bb2cc2276ebfeafb83ffab5da238ebde6f2cf4', '10','usdt')
两种转账非常相似,同样的一个方法,只是最后加一个参数即可。
4、关于合约的查询或者转账会有一些小问题下面我说明一下
上图中创建合约对象的时候需要传一个abi的json串,这个会根据不同的币种有不同的abi,可以去火币网查,这里我给下载几个;
还有一个合约地址也是根据币种来填写的一个参数,测试网可以在领取测试币的地方查看合约地址。
这个位置也有合约地址,一样的填写上就好,流程到此就结束了,有不明白的再讨论
附件abi:
一些附件和文件没有显示的请阅读此链接:http://note.youdao.com/s/HGzShZZd
当您发现内容错误或代码bug,以及下载链接无法使用等,请点击屏幕右下角的上报错误来进行提交,我们会尽快修正。
本程序所有源码和工具完全免费,当本网站内容如果侵犯了您的权益,请联系我们,我们会尽快处理,感谢您的合作。
上一篇: FIL创建用户等相关接口
下一篇: 彻底删除我的电脑中的腾讯视频图标
相关文章
评论:
文明上网理性发言,请遵守 新闻评论服务协议