比特币钱包RPC的PHP调用方法

一个人想着一个人 提交于 2019-12-05 22:30:34

当我们希望在Php开发的网站中加入比特币支付功能时,需要解决的第一个 问题,就是如何在Php程序代码中调用比特币钱包的RPC API开发接口来实现 我们期望的功能,例如比特币的支付与接收。

例如,当我们希望在Php代码中给某个比特币地址发送以太币时,可以使用 sendtoaddress 这个RPC接口,可以传入以下参数:

  • ToAddress:接收地址
  • Amount:发送的比特币数量
  • Comment:备注文本
  • CommentTo:备注接收人
  • AutoFeeSubtract:是否自动扣除手续费,默认值:false

上面的参数中,只有ToAddressAmount是必须的。当调用完成时, 将返回该笔交易对应的ID。

下面的代码使用GuzzleHttp来调用sendtoaddress接口向指定的地址发送 0.12个比特币:

<?php
require('../vendor/autoload.php');

use GuzzleHttp\Client;

$client = new Client();

$opts = [
  'json' => [
    'jsonrpc' => '1.0',
    'method' => 'sendtoaddress',
    'params' => ['1LeiqzD6jCwPcdNNAPiT8ayKgdHJMP2EpZ',0.12],
    'id' => time()
  ]
];

$rsp = $client->post('http://user:pass@localhost:8332',$opts);
echo $rsp->getBody() . PHP_EOL;

上面的代码假设你的比特币钱包在本机的8332端口监听RPC调用请求,这也是 比特币钱包默认的监听端口。

比特币钱包提供了非常丰富的RPC接口,我们可以在Php代码中非常轻松 地加入对比特币支付的支持。如果你希望快速掌握在自己的Php网站集成对 比特币的支持,可以访问我们提供的在线互动教程: Php比特币开发详解

原文链接:PHP如何调用比特币钱包的RPC

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!