placecodex/laravel-web3

Laravel SDK 为与以太坊区块链交互的 Web3 PHP API 客户端提供的包装器。

资助包维护!
Ko Fi

1.1.0 2021-04-06 13:53 UTC

This package is not auto-updated.

Last update: 2024-09-30 14:33:28 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 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 联系,而不是使用问题跟踪器。

🎉 致谢