PHP如何對接比特幣錢包

weixin_34208185發表於2018-09-22

當我們希望在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

相關文章