cviebrock/laravel-mangopay

Laravel/Lumen 对官方 Mangopay SDK 库的包装

9.0.0 2022-08-05 20:05 UTC

This package is auto-updated.

Last update: 2024-09-06 00:20:39 UTC


README

此包可以更轻松(希望!)地将官方 Mangopay SDK 集成到您的 Laravel 和 Lumen 应用程序中。

⚠️ 此包将停止维护

由于几个因素,包括我不再使用 Mangopay,我将停止此包的开发。如果您有兴趣接管此项目,请在此问题板上与我联系。

Build Status Total Downloads Latest Stable Version Latest Unstable Version License

安装

根据您的 Laravel 版本,您应安装不同版本的包。注意:从 6.0 版本开始,包的版本应与 Laravel 版本匹配。

Laravel

  1. 通过 composer 安装包

    composer require cviebrock/laravel-mangopay

    更新 composer 后,包将自动注册其服务提供者。

  2. 发布配置文件

    php artisan vendor:publish --provider="Cviebrock\LaravelMangopay\ServiceProvider"
  3. 最后,生成所需的临时目录

    php artisan mangopay:mkdir  

Lumen

  1. 通过 composer 安装包

    composer require cviebrock/laravel-mangopay:^6.0
  2. 将配置文件复制到您的 config 文件夹,并在 bootstrap/app.php 中启用一切

    $app->configure('mangopay');
    
    $app->register(Cviebrock\LaravelMangopay\ServiceProvider::class);
  3. 生成所需的临时目录

    php artisan mangopay:mkdir  

配置

此包支持通过位于 config/services.php 的服务配置文件进行身份验证配置。将以下块添加到该文件,并在您的 .env 文件中设置适当的值

'mangopay' => [
    'env'    => env('MANGOPAY_ENV', 'sandbox'),  // or "production"
    'key'    => env('MANGOPAY_KEY'),             // your Mangopay client ID
    'secret' => env('MANGOPAY_SECRET'),          // your Mangopay client password
],

您可以发布的配置文件 config/mangopay.php 提供了在实例化 MangopayAPI 对象时可以传递的额外属性。在大多数情况下,您不需要在这里更改任何内容,因此您可以选择不发布此配置,或者让它简单地返回一个空数组。

如果您使用此文件,请参阅 SDK 文档,了解可以设置的各个属性(基本上是 MangoPay\Libraries\Configuration 类上的任何公共属性)。

用法

此包真正做的事情就是通过将配置放入 Laravel/Lumen 的配置系统中,使实例化 MangopayAPI 变得简单。

现在使用它就像将 Mangopay 注入到您的控制器中,然后像使用 MangopayAPI 类一样使用它一样简单

class MyController extends Illuminate\Routing\Controller
{

    /**
     * @var \MangoPay\MangoPayApi
     */
    private $mangopay;
    
    public function __construct(\MangoPay\MangoPayApi $mangopay) {
        $this->mangopay = $mangopay;
    }

    public function doStuff($someId)
    {
        // get some user by id
        $john = $this->mangopay->Users->Get($someId);

        // change and update some of his data
        $john->LastName .= " - CHANGED";
        $this->mangopay->Users->Update($john);

        // get his bank accounts
        $pagination = new MangoPay\Pagination(1, 10); // get 1st page, 10 items per page
        $accounts = $this->mangopay->Users->GetBankAccounts($john->Id, $pagination);

        // etc.
    }
}

错误、建议和贡献

感谢 所有 为此项目做出贡献的人!特别感谢 JetBrains 的开源许可计划...以及出色的 PHPStorm IDE,当然!

JetBrains

请使用 Github 报告错误,发表评论或建议。

有关如何贡献更改,请参阅 CONTRIBUTING.md

版权和许可证

laravel-mangopay 由 Colin Viebrock 编写,并按 MIT 许可证发布。有关详细信息,请参阅 LICENSE.md 文件。

版权(c)2016 Colin Viebrock