无法使用blockcypher api创建比特币交易


Unable to create bitcoin transaction using blockcypher api

我有一个使用blockcypher创建的比特币地址,我想从其中转移一些比特币(已经存入)到另一个地址。

我正在使用blockcypher php客户端使用示例代码https://www.blockcypher.com/dev/bitcoin/?php#creating-transactions和https://github.com/blockcypher/php-client/blob/master/sample/transaction-api/CreateTransaction.php创建事务,我得到错误

Class 'Mdanter'Ecc'Math'Gmp' not found in C:'xampp'htdocs'cck'vendor'bitwasp'bitcoin'src'Math'Math.php on line 8

我检查了文件供应商,在Mdanter'Ecc'Math'Gmp中有Gmp文件或类,所以我编辑了Math .php文件并编辑了第6行,使用'Mdanter'Ecc'Math'GmpMath作为Gmp;现在得到类似https://github.com/blockcypher/php-client/issues/21

中的错误

我的代码如下

require_once __DIR__.'/vendor/autoload.php';
use BlockCypher'Auth'SimpleTokenCredential;
use BlockCypher'Rest'ApiContext;
use BlockCypher'Api'TX as DD;
use BlockCypher'Client'TXClient;
// ... other classes
$apiContext = ApiContext::create(
 'main', 'btc', 'v1',
new SimpleTokenCredential('4e3a287e603f48c994d978dab061084a'),
array('log.LogEnabled' => true, 'log.FileName' => 'BlockCypher.log',      'log.LogLevel' => 'DEBUG') );

$tx = new DD();
// Tx inputs
$input = new 'BlockCypher'Api'TXInput();
$input->addAddress("1DZR2kUCa5HTyVZLY8TWFf2ZfjhWgsgNtf");
$tx->addInput($input);
// Tx outputs
$output = new 'BlockCypher'Api'TXOutput();
$output->addAddress("1Mye4sZmd9rzjY6yUw19etZhzeVU2q1kcj");
$output->setValue(1000); // Satoshis
$tx->addOutput($output);
// Tx amount

$txClient = new TXClient($apiContext);
$txSkeleton = $txClient->create($tx);
$privateKeys =     array("3ed07ff3e458fabb8b99b723002f4817eebd5fc11f9c76fdd9c200090c04fd1c");
$txSkeleton = $txClient->sign($txSkeleton, $privateKeys);
$txSkeleton = $txClient->send($txSkeleton);

这个问题是由php-client依赖项中的一个错误的依赖项配置引起的。它是固定的。更多信息:

https://github.com/blockcypher/php-client/issues/21

您只需要将php-client更新到最新版本