xrplwin / xrpl-nfttxmutationparser
解析XRPL NFT交易到上下文感知对象,提供方向、令牌ID和角色。
Requires
- php: ^8.1.0
Requires (Dev)
- phpunit/phpunit: ^10.1
- symfony/var-dumper: ^6.1
README
PHP的XRPL NFT交易突变解析器
支持的网络
- XRPL
- Xahau
描述
解析NFToken和URIToken(统称为NFT)交易(NFTokenMint
、URITokenMint
、NFTokenBurn
、URITokenBurn
、NFTokenAcceptOffer
、URITokenBuy
、NFTokenCancelOffer
、URITokenCancelSellOffer
、NFTokenCreateOffer
、URITokenCreateSellOffer
、Remit
),并带有账户上下文,返回受影响的NFT、NFT转移、铸造或销毁的方向,以及引用账户在特定交易中的角色。
使用此解析器,您可以找出交易执行后引用账户发生了什么。例如,当令牌铸造时,解析器将输出令牌ID和方向IN,这意味着引用账户是铸造者,新令牌被添加到引用账户的所有权中。
Remit (XLS-55)
Remit交易类型可以铸造单个存在于此交易中的URIToken,就像其他任何NFT一样。此外,Remit可以将零个、一个或多个现有的URIToken从账户转移到目的地,这些令牌存在于nfts
和ref.nfts
数组键中,发送账户具有'SELLER'角色,接收者目的地具有'OWNER'角色。
检查内容
- 令牌ID - 受影响的令牌ID
- 令牌方向 - 铸造 - IN,销毁 - OUT,出售 - OUT,购买 - IN
- 角色 - 引用账户在此交易中的角色,是铸造者、销毁者、卖家、买家、经纪人还是发行者
- 转发的URIToken -
Remit
交易类型中转移的令牌列表
NFToken(XLS-20)发行者注意事项
发行者仅在NFTokenAcceptOffer
交易类型中发生,它是通过检查余额是否改变从修改后的AccountRoot节点中提取的。如果是,则此账户获得了销售百分比,并且是NFToken的发行者。
注意
此软件包按原样提供,请先自行测试。
发现了一个错误? 在此处报告问题
要求
- PHP 8.1或更高版本
- Composer
安装
要安装,请运行
composer require xrplwin/xrpl-nfttxmutationparser
用法
use XRPLWin\XRPLNFTTxMutatationParser\NFTTxMutationParser; $txResult = [ "Account" => "rBcd..." "Fee" => "1000", //... ]; $parser = new NFTTxMutationParser( "rAbc...", //This is reference account (object)$txResult //This is transaction result ); $parsedTransaction = $parser->result(); print_r($parsedTransaction); /* ┐ ├ Output for $parsedTransaction: ├ Array ( ├ [nft] => 00082710... ├ [nfts] => [] ├ [context] => null ├ [ref] => Array ├ ( ├ [account] => rAbc... ├ [nft] => 00082710... ├ [nfts] => [] ├ [direction] => IN ├ [roles] => Array ├ ( ├ [0] => OWNER ├ ) ├ ) ├ ) ┴ */
响应
运行测试
运行"tests"目录中的所有测试。
composer test
或
./vendor/bin/phpunit --testdox
演示
在XRPLWin Playground上查看此操作