brianhenryie/bh-php-monero-explorer

dev-master 2023-06-07 00:52 UTC

This package is auto-updated.

Last update: 2024-09-07 03:28:55 UTC


README

PHP 7.4 PHPCS PSR-12 PHPUnit PHPStan

Monero 探索器 PHP 客户端

一个轻量级的、强类型的PHP SDK,用于Onion Monero 区块链探索器实例的HTTP API,例如xmrchain.net

Monero (XMR)是一种以隐私和安全为首要目标,以易用性和效率为次要目标的私有、去中心化加密货币。

使用PHP获取和解析JSON非常容易,因此这个库的价值来自于类型化的类和PhpDoc中的文档。请为函数的目的贡献澄清。

使用

在v1.0之前,函数签名可能会发生变化,因为它们有适当的文档。

composer require --fixed brianhenryie/bh-php-monero-explorer@dev

您还需要一个PSR-7实现和一个PSR-17实现,最流行的是guzzlehttp/guzzle

ExplorerApi是API端点到PHP函数的直接映射。

/** @var Psr\Http\Message\RequestFactoryInterface $requestFactory */
$requestFactory = new \GuzzleHttp\Psr7\HttpFactory();
/** @var Psr\Http\Client\ClientInterface $client */
$client = new \GuzzleHttp\Client();

$explorerApi = new \BrianHenryIE\MoneroExplorer\ExplorerApi( $requestFactory, $client );

/** @var \BrianHenryIE\MoneroExplorer\Model\NetworkInfo $networkInfo */
$networkInfo = $explorerApi->getNetworkInfo()

$lastBlockHeight = $networkInfo->getHeight() - 1;

ExplorerTools扩展了ExplorerApi以添加便利函数。

$explorerTools = new \BrianHenryIE\MoneroExplorer\ExplorerTools( $requestFactory, $client );

$lastBlockHeight = $explorer->getLastBlockHeight();

接受Monero付款

要使用Monero接受付款...

  1. 与客户分享付款地址
  2. 注意当时的区块链高度
  3. 定期/逐步检查自那时以来的新块,检查付款

参见:examples/VerifyingPaymentsReceived.php

实现

初始的class-monero-explorer-tools.php是从monero-integrations/monerowp中提取的。

目标

  • 强类型:一些类型不完整,一些类型被反序列化为数组
  • 单元测试:100%应该可以实现,因为只是一个薄薄的包装器
  • 使用PSR-7 HTTP客户端 | PSR-17 HTTP工厂
  • PhpDoc
  • 简短教程

注意

  • API是只读的
  • API响应使用JSend约定进行JSON格式化

Composer

由于代码覆盖率高,选择了所需的库

致谢