starknet-php/starknet.php

PHP SDK,允许您与 StarkNet L2 网络交互

dev-main 2022-03-21 05:47 UTC

This package is auto-updated.

Last update: 2024-09-21 11:24:20 UTC


README

starknet.php 是一个 PHP SDK,允许您从 PHP 应用程序与 StarkNet 交互。

starkware License

此项目仍在开发中。代码和文档目前处于开发阶段,可能会发生变化

安装

需要 PHP 8.0+

通过 Composer 包管理器安装 starknet.php

composer require starknet-php/starknet.php

用法

以下代码可用于使用公钥和私钥创建签名者

$wallet_address = '0x0006be19b8a602c2013deb97e2ad12b358d2f3fb2e3d4c1e96f047cb68fd8a8' // your wallet address
$pk = '' // your private key
$network = 'testnet' // can be testnet || mainnet
$signer = new Signer($pk, $network, $wallet_address);

以下代码可用于与合约交互

$contract = '0x07394cbe418daa16e42b87ba67372d4ab4a5df0b05c6e554d158458ce245bc10' // the contract address to interact with
$method = Stark::getSelectorFromName('transfer') // the method to call
$calldata = ['0x060eb76c275ce5188b9e30b212776a68e037674331437fc028b072102b6fe181', '1200000000000000000', '0'] // the parameters to call with [to, amount, max]
$signer->addTransaction([
        'type'                 => 'INVOKE_FUNCTION',
        'contract_address' => $contract,
        'entry_point_selector' => $method,
        'calldata'             => $calldata,
    ]);

测试

使用 pest 测试包创建了测试。要运行测试,请执行

./vendor/bin/pest

贡献

有关更多详细信息,请参阅 CONTRIBUTING

安全

如果您发现任何安全问题,请通过电子邮件 asciik@protonmail.com 而不是使用问题跟踪器

鸣谢

许可

MIT 许可证(MIT)。有关更多信息,请参阅 许可文件