ryolay/laravel-mangopay

Laravel/Lumen 对 office Mangopay SDK 库的封装

dev-master 2023-05-24 23:16 UTC

This package is auto-updated.

Last update: 2024-09-25 02:19:12 UTC


README

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

⚠️ 此包将被废弃

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

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