gatepavel/laravel-web3

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

资助包维护!
Ko Fi

1.1.4 2021-07-13 05:46 UTC

This package is auto-updated.

Last update: 2024-09-13 13:18:12 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 反馈,而不是使用问题跟踪器。

🎉 致谢