jackwong7/laravel-web3

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

资助包维护!
Patreon

1.1.1 2021-11-07 02:48 UTC

This package is auto-updated.

Last update: 2024-09-07 09:08:31 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 发送电子邮件,而不是使用问题跟踪器。

🎉 致谢