terranc/laravel-web3

Laravel SDK 对 Web3 PHP API 客户端进行封装,用于与以太坊区块链交互。

资助包维护!
Ko Fi

1.1.1 2021-07-25 08:51 UTC

This package is not auto-updated.

Last update: 2024-09-16 22:26:58 UTC


README

CI codecov StyleCI Latest Stable Version Total Downloads Monthly Downloads License

Laravel Web3 是一个 Laravel SDK 封装,用于 Web3 PHP API 客户端,该客户端可以与以太坊区块链交互。

🤝 支持

Renoki Co. 在 GitHub 上致力于将众多开源项目和有益项目带给世界。每天开发和维护项目是一项艰苦的工作,尽管如此,我们热爱它。

如果您在日常工作中使用您的应用程序,在演示中,爱好项目或甚至是学校项目中,请分享一些关于我们工作的好话,或者赞助我们的工作。好话会触动我们的心灵和氛围,而赞助将使开源项目保持活力。

ko-fi

🚀 安装

您可以通过 composer 安装此包

composer require terranc/laravel-web3 --ignore-platform-reqs

发布配置

$ php artisan vendor:publish --provider="RenokiCo\LaravelWeb3\LaravelWeb3ServiceProvider" --tag="config"

🙌 使用

客户端配置位于 config/web3.php 文件中。每个调用都将通过 \Web3\Web3 类进行。

use RenokiCo\LaravelWeb3\Web3Facade;

Web3Facade::eth()->provider->execute(function ($err, $data) {
    //
});

多连接

该包支持多连接配置。如果您想选择特定的一个(不是默认的),请在获取集群之前调用 connection

use RenokiCo\LaravelWeb3\Web3Facade;

Web3Facade::connection('http2')->eth()->provider->execute(function ($err, $data) {
    //
});

其他方法

以下方法也可用

use RenokiCo\LaravelWeb3\Web3Facade;

Web3Facade::eth(); // equivalent of $web3->eth
Web3Facade::net();  // equivalent of $web3->net
Web3Facade::personal();  // equivalent of $web3->personal
Web3Facade::shh();  // equivalent of $web3->shh
Web3Facade::utils();  // equivalent of $web3->utils

与合约交互

您也可以用相同的配置初始化合约

use RenokiCo\LaravelWeb3\Web3Facade;

Web3Facade::contract($abi, 'latest')
    ->bytecode($bytecode)
    ->new($params, $callback);

🐛 测试

vendor/bin/phpunit

🤝 贡献

请参阅 CONTRIBUTING 获取详细信息。

🔒 安全

如果您发现任何与安全相关的问题,请通过电子邮件 alex@renoki.org 而不是使用问题跟踪器来报告。

🎉 致谢