PHP实现创建以太坊钱包转账等功能


Posted in PHP onApril 21, 2021

1.Geth下载

(对以太坊了解不深的可以后面自己查找有关geth的资料,与此类似的客户端还有Ethereum、Parity 、Mist),本文采用windows版(Windows系统:geth-windows-amd64-1.8.3)
https://ethfans.org/wikis/Ethereum-Geth-Mirror

安装:

windows版的直接傻瓜式安装到放软件的地方,然后打开安装根目录,这时可以看到有个geth.exe的可执行文件,先别急执行;先在该目录下创建一个piccgenesis.json文件。
piccgenesis.json文件内容如下:

{
"config": {
"chainId": 33,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
},
"coinbase": "0x0000000000000000000000000000000000000000",
"difficulty": "0x4",
"extraData": "",
"gasLimit": "0xffffffff",
"nonce": "0x0000000000000042",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash": “0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp": "0x00",
"alloc": { }
}

配置说明请参考:https://www.colabug.com/4943842.html
现在使用cmd命令行工具来运行geth.exe,在该终端下执行如下命令:

geth --datadir “chain” init piccgenesis.json

然后在该终端设置json-rpc,命令如下:

geth --rpc --rpccorsdomain * --datadir ./mychain -rpcport 8534 --port 30308 --identity test --networkid 111111111 --rpcaddr 0.0.0.0 --rpcapi admin,miner,db,eth,net,web3,personal --nodiscover console

注:这里用的是测试网络,不需要同步所有区块,如果要正式应用需要一台linux服务器,开启主网同步所有区块,在打开并设置rpc。

2.使用composer下载web3.php

在此之前本人默认你已有一个本地的测试项目(能跑通),本人用的是tp5的测试项目

要求:

php版本大于7.1且php需开启openssl扩展
安装过程:
请先在composer中加入一行

“minimum-stability”: “dev”,

然后在项目根目录下执行(该项目根目录必须)

composer require sc0vu/web3.php dev-master

或者在 composer.json中加入

“sc0vu/web3.php”: “dev-master”

到这里,准备工作基本完毕。
PHP代码调用web.php接口实现创建新的以太坊账号(在该本地项目需要处理以太坊账号管理逻辑的控制器写,建议随便找个控制器或php页面先测试)
$web3 = new \Web3\Web3(‘http://localhost:8534'); //这里的端口是前面设置的rpc端口号,不要把geth终端关掉
$newAccount = ‘';

$web3->personal->newAccount('123456', function ($err, $account) use (&$newAccount) {
    if ($err !== null) {
        echo 'Error: ' . $err->getMessage();
        return;
    }
    $newAccount = $account;
    echo 'New account: ' . $account . PHP_EOL;
});

执行结果

PHP实现创建以太坊钱包转账等功能

到这里,基本上php+eth的开发就可以跑起来了,下面是web3.php的一些接口使用

https://github.com/sc0Vu/web3.php

gethAPI文档:http://cw.hubwiz.com/card/c/geth-rpc-api/1/4/5/

以上就是PHP实现创建以太坊钱包转账等功能的详细内容,更多关于PHP以太坊钱包的资料请关注三水点靠木其它相关文章!

PHP 相关文章推荐
十天学会php之第一天
Oct 09 PHP
php数据入库前清理 注意php intval与mysql的int取值范围不同
Dec 12 PHP
php权重计算方法代码分享
Jan 09 PHP
php使用多个进程同时控制文件读写示例
Feb 28 PHP
php线性表的入栈与出栈实例分析
Jun 12 PHP
PHP使用ODBC连接数据库的方法
Jul 18 PHP
PHP+ajax分页实例简析
Dec 07 PHP
php实现用户注册密码的crypt加密
Jun 08 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
Nov 20 PHP
php使用imagecopymerge()函数创建半透明水印
Jan 25 PHP
PHP 实现 WebSocket 协议原理与应用详解
Apr 22 PHP
如何使用php生成zip压缩包
Apr 21 #PHP
PHP使用非对称加密算法RSA
laravel ajax curd 搜索登录判断功能的实现
thinkphp 获取控制器及控制器方法
Apr 16 #PHP
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
PHP实现考试倒计时功能代码
Apr 16 #PHP
PHP对接阿里云虚拟号的实现(号码隐私保护)
You might like
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
提高PHP编程效率 引入缓存机制提升性能
2010/02/15 PHP
PHP 动态随机生成验证码类代码
2010/04/09 PHP
php 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
thinkphp中ajax与php响应过程详解
2014/12/08 PHP
初识PHP中的Swoole
2016/04/05 PHP
深入浅析PHP无限极分类的案例教程
2016/05/09 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
2018/03/15 PHP
workerman结合laravel开发在线聊天应用的示例代码
2018/10/30 PHP
php经典趣味算法实例代码
2020/01/21 PHP
JSQL 基于客户端的成绩统计实现方法
2010/05/05 Javascript
基于jQuery的图片左右无缝滚动插件
2012/05/23 Javascript
JS将所有对象s的属性复制给对象r(原生js+jquery)
2014/01/25 Javascript
javascript图片滑动效果实现
2021/01/28 Javascript
DOM中事件处理概览与原理的全面解析
2016/08/16 Javascript
浅谈bootstrap使用中的一些问题以及解决过程
2016/10/18 Javascript
JavaScript内存泄漏的处理方式
2017/11/20 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
web前端vue filter 过滤器
2018/01/12 Javascript
node中的密码安全(加密)
2018/09/17 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
2019/05/22 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
[08:02]DOTA2牵红线 zhou神抱得美人归
2014/03/22 DOTA
跟老齐学Python之重回函数
2014/10/10 Python
TensorFlow实现非线性支持向量机的实现方法
2018/04/28 Python
Python+AutoIt实现界面工具开发过程详解
2019/08/07 Python
在Django中预防CSRF攻击的操作
2020/03/13 Python
python opencv实现简易画图板
2020/08/27 Python
python判断变量是否为列表的方法
2020/09/17 Python
为您搜罗全球潮流時尚品牌:HBX
2019/12/04 全球购物
中软国际Java程序员机试题
2012/08/19 面试题
酒店门卫岗位职责
2013/12/29 职场文书
大学生精神文明先进个人事迹材料
2014/05/02 职场文书
学校爱国卫生月活动总结
2014/06/25 职场文书
Spring Cloud OpenFeign模版化客户端
2022/06/25 Java/Android