psychiccat / monero-php
Monero simplewallet JSON-RPC接口的PHP库。
Requires
- graze/guzzle-jsonrpc: ^3.2
This package is not auto-updated.
Last update: 2024-09-14 18:04:22 UTC
README
Monero simplewallet
JSON-RPC接口的PHP库。
有关Monero的更多信息,请访问 https://getmonero.org/home。
如果您觉得这个库有用,请随意捐赠!
XMR: 47Vmj6BXSRPax69cVdqVP5APVLkcxxjjXdcP9fJWZdNc5mEpn3fXQY1CFmJDvyUXzj2Fy9XafvUgMbW91ZoqwqmQ6RjbVtp
安装
使用Composer安装库。
composer require psychiccat/monero-php
创建钱包实例
require 'vendor/autoload.php'; use Monero\Wallet; $wallet = new Monero\Wallet();
默认主机名和端口连接到 http://127.0.0.1:18082。
要连接到外部IP或不同端口
$hostname = YOUR_WALLET_IP; $port = YOUR_WALLET_PORT; $wallet = new Monero\Wallet($hostname, $port);
钱包方法
getBalance
$balance = $wallet->getBalance();
返回钱包在原子单位下的当前余额和未锁定(可花费)余额。除以1e12进行转换。
示例响应
{ balance: 3611980142579999, unlocked_balance: 3611980142579999 }
getAddress
$address = $wallet->getAddress();
返回钱包的Monero地址。
示例响应
{ address: '47Vmj6BXSRPax69cVdqVP5APVLkcxxjjXdcP9fJWZdNc5mEpn3fXQY1CFmJDvyUXzj2Fy9XafvUgMbW91ZoqwqmQ6RjbVtp' }
transfer
$tx_hash = $wallet->transfer($options);
将Monero转账给单个收款人或一组收款人在一笔交易中。返回付款的交易哈希。
参数
options
- 包含destinations
(对象或对象数组)、mixin
(整数)、unlock_time
(整数)、payment_id
(字符串)的数组。只需destinations
是必需的。默认mixin值为4。
$options = [ 'destinations' => (object) [ 'amount' => '1', 'address' => '47Vmj6BXSRPax69cVdqVP5APVLkcxxjjXdcP9fJWZdNc5mEpn3fXQY1CFmJDvyUXzj2Fy9XafvUgMbW91ZoqwqmQ6RjbVtp' ] ];
示例响应
{ tx_hash: '<b9272a68b0f242769baa1ac2f723b826a7efdc5ba0c71a2feff4f292967936d8>', tx_key: '' }
transferSplit
$tx_hash = $wallet->transferSplit($options);
与transfer()
相同,但在必要时可以分成多个交易。返回交易哈希列表。
为options
数组提供的附加属性
new_algorithm
- 使用新交易构造算法时为true
。默认为false
。(布尔值)
示例响应
{ tx_hash_list: [ '<f17fb226ebfdf784a0f5814e1c5bb78c19ea26930a0d706c9dc1085a250ceb37>' ] }
sweepDust
$tx_hashes = $wallet->sweepDust();
将所有尘输出发送回钱包,以便更容易花费和混合资金。返回相应的交易哈希列表。
示例响应
{ tx_hash_list: [ '<75c666fc96120a643321a5e76c0376b40761582ee40cc4917e8d1379a2c8ad9f>' ] }
getPayments
$payments = $wallet->getPayments($payment_id);
使用给定的付款ID返回付款的列表。
参数
paymentID
- 扫描钱包以查找包含的交易(字符串)
getBulkPayments
$payments = $wallet->getBulkPayments($payment_id, $height);
使用单个付款ID或给定高度的付款ID列表返回付款的列表。
参数
paymentIDs
- 要扫描钱包的付款ID或ID列表(数组)minHeight
- 开始扫描的最小区块高度(例如:800000)(整数)
incomingTransfers
$transfers = $wallet->incomingTransfers($type);
返回钱包的传入转账列表。
参数
type
- 接受"all"
:所有转账,"available"
:尚未花费的转账,或"unavailable"
:已花费的转账(字符串)
queryKey
$key = $wallet->queryKey($type);
返回钱包的支出密钥(助记词种子)或查看私钥。
参数
type
- 接受"mnemonic"
:恢复钱包的助记词种子,或"view_key"
:钱包的查看密钥(《字符串》)
integratedAddress
$integratedAddress = $wallet->integratedAddress($payment_id);
从您的钱包地址和给定的付款ID创建并返回一个新的集成地址,或在没有提供付款ID的情况下生成随机付款ID。
参数
payment_id
- 64字符十六进制字符串。如果没有提供,将自动生成随机付款ID。(字符串,可选)
示例响应
{ integrated_address: '4HCSju123guax69cVdqVP5APVLkcxxjjXdcP9fJWZdNc5mEpn3fXQY1CFmJDvyUXzj2Fy9XafvUgMbW91ZoqwqmQ96NYBVqEd6JAu9j3gk' }
splitIntegrated
$splitIntegrated = $wallet->splitIntegrated($integrated_address);
返回与给定集成地址对应的标准地址和付款ID。
参数
integrated_address
- Monero集成地址(《字符串》)
示例响应
{ payment_id: '<61eec5ffd3b9cb57>',
standard_address: '47Vmj6BXSRPax69cVdqVP5APVLkcxxjjXdcP9fJWZdNc5mEpn3fXQY1CFmJDvyUXzj2Fy9XafvUgMbW91ZoqwqmQ6RjbVtp' }
getHeight
用法
$height = $wallet->getHeight();
返回代理当前区块高度。
示例响应
{ height: 874458 }
stopWallet
$wallet->stopWallet();
干净地关闭当前simplewallet进程。