xiangdangdang/laravel-web3

Laravel SDK 为 Web3 PHP API 客户端提供了封装,用于与以太坊区块链交互。

资助包维护!
Patreon

1.0.0 2021-12-09 04:36 UTC

This package is auto-updated.

Last update: 2024-09-09 15:31:34 UTC


README

CI codecov StyleCI Latest Stable Version Total Downloads Monthly Downloads License

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

🤝 支持

如果您在生产应用程序、演示、爱好项目、学校项目等中使用 Renoki Co. 的一个或多个开源包,请分享一些关于我们工作的好评或通过 Patreon 赞助我们的工作。 📦

您有时会在 Patreon 上获得关于 Laravel、AWS 或 Kubernetes 的独家内容,以及项目或包的早期访问。

🚀 安装

您可以通过 composer 安装此包

composer require renoki-co/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,而不是使用问题跟踪器。

🎉 致谢