chinilla/chinilla-php

支持获取当前区块链信息、获取当前海拔、获取当前网络信息、创建新钱包、生成助记词、发起交易和获取Chinilla的HCX交易记录等功能。

1.1.0 2022-06-11 00:54 UTC

This package is auto-updated.

Last update: 2024-09-11 05:54:16 UTC


README

概述

Chinilla-PHP支持获取当前区块链信息、获取当前海拔、获取当前网络信息、创建新钱包、生成助记词、发起交易和获取Chinilla的HCX交易记录等功能。

支持的方法

节点

区块链

  • ✅ 获取当前区块链信息 getBlockchainState()
  • ✅ 通过 getBlock(header_hash) 获取完整区块
  • ✅ 获取完整区块列表 getBlocks()
  • ✅ 通过 getBlockRecordByHeight(height) 获取区块记录
  • ✅ 通过 getBlockRecord(header_hash) 获取区块记录
  • ✅ 获取区块记录列表 getBlockRecords()
  • ✅ 获取未完成的头区块 getUnfinishedBlockHeaders()
  • ✅ 获取总绘图空间的估计值 getNetworkSpace()
  • ✅ 获取区块的货币增加和删除记录 getAdditionsAndRemovals()
  • ✅ 获取区块链的初始冻结期 getInitialFreezePeriod()
  • ✅ 获取当前网络信息 getNetworkInfo()

货币

  • ✅ 通过 getCoinRecordsByPuzzleHash(puzzle_hash) 获取货币记录
  • ✅ 通过数组 getCoinRecordsByPuzzleHashes(array(puzzle_hash, puzzle_hash, ...)) 获取货币记录
  • ✅ 通过 getCoinRecordByName(coin_name) 获取货币记录
  • 🚧 将交易包推送到内存池和区块链 pushTx()

内存池

  • ✅ 获取交易ID列表(支出包散列)getAllMempoolTxIds()
  • ✅ 获取内存池项目 getAllMempoolItems()
  • ✅ 通过 getMempoolItemByTxId(transaction_id) 获取内存池项目

钱包

密钥管理

  • ✅ 指定为活动 logIn(fingerprint)
  • ✅ 获取钱包公钥 getPublicKeys()
  • ✅ 获取钱包私钥 getPrivateKey()
  • ✅ 生成助记词 generateMnemonic()
  • ✅ 添加密钥链 addKey()
  • ✅ 删除私钥 deleteKey()
  • ✅ 删除所有私钥 deleteAllKeys()

钱包节点

  • ✅ 获取钱包同步状态 getSyncStatus()
  • ✅ 获取当前高度 getHeightInfo()
  • ✅ 农场区块 farmBlock()
  • ✅ 获取区块链的初始冻结期 getInitialFreezePeriod()
  • ✅ 获取当前网络信息 getNetworkInfo()

钱包管理

  • ✅ 获取钱包列表 getWallets()
  • 🚧 创建新钱包 createNewWallet()

钱包

  • ✅ 获取钱包余额 getWalletBalance()
  • ✅ 通过 transaction hash 获取交易记录 getTransaction()
  • ✅ 获取交易记录 getTransactions()
  • ✅ 获取新地址 getNextAddress()
  • ✅ 发起交易 sendTransaction()
  • ✅ 创建备份 createBackup()
  • ✅ 获取钱包交易数量 getTransactionCount()
  • ✅ 获取农场奖励信息 getFarmedAmount()
  • 🚧 createSignedTransaction()

报价

  • ✅ 检查报价有效性 checkOfferValidity()
  • ✅ 获取报价摘要 getOfferSummary()
  • ✅ 获取报价 getOffer()

NFT钱包

  • ✅ 创建新的NFT钱包 createNewNftWallet()
  • ✅ 将所有URI添加到NFT addUriToNft()
  • ✅ 获取NFT信息 get_nft_info()
  • ✅ 转移NFT transferNft()
  • ✅ 列出NFTs list_nfts()
  • ✅ 设置NFT DID setNftDid()
  • ✅ GMint NFT mintNft()

其他货币和交易 🚧

DID 钱包 🚧

RL 钱包 🚧

快速入门

安装

composer require chinilla/chinilla-php

代码示例

/* (Full Node) */
$fullNodeConfig = [
    'base_uri' => 'https://:8555',
    'verify' => false,
    'cert' => '/your/private_full_node.crt/path',// private_full_node.crt
    'ssl_key' => '/your/private_full_node.key/path',// private_full_node.key
];

$api = new \Chinilla\Api(new \GuzzleHttp\Client($fullNodeConfig));
$fullNode = new \Chinilla\FullNode($api);
$info = $fullNode->getNetworkInfo();
// $info->network_name      vanillanet
// $info->network_prefix    hcx

/* (Wallet) */
$walletConfig = [
    'base_uri' => 'https://:9256',
    'verify' => false,
    'cert' => '/your/private_wallet.crt/path',// private_wallet.crt
    'ssl_key' => '/your/private_wallet.key/path', // private_wallet.key
];

$api = new \Chinilla\Api(new \GuzzleHttp\Client($walletConfig));
$wallet = new \Chinilla\Wallet($api);
$info = $wallet->getNetworkInfo();