starknet-php / starknet.php
PHP SDK,允许您与 StarkNet L2 网络交互
dev-main
2022-03-21 05:47 UTC
Requires
- php: ^8.0
- ext-bcmath: *
- guzzlehttp/guzzle: ^7.4
- kornrunner/keccak: ^1.1
- mdanter/ecc: 1.0
- phpseclib/phpseclib: ^3.0.12
- simplito/elliptic-php: 1.0.6
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.3.2
- mockery/mockery: ^1.4.4
- pestphp/pest: ^1.21.1
- phpstan/phpstan: ^1.2.0
- symfony/var-dumper: ^5.4.0
This package is auto-updated.
Last update: 2024-09-21 11:24:20 UTC
README
starknet.php 是一个 PHP SDK,允许您从 PHP 应用程序与 StarkNet 交互。
此项目仍在开发中。代码和文档目前处于开发阶段,可能会发生变化
安装
需要 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)。有关更多信息,请参阅 许可文件