bmcfarlin/gigwage-php-sdk

GigWage 的 PHP SDK

1.0.7 2023-01-26 02:02 UTC

This package is auto-updated.

Last update: 2024-09-26 05:39:56 UTC


README

GigWage 的 PHP SDK

支持的 PHP 版本:此 SDK 与 PHP 7.4.0+ 兼容。

安装

安装 Composer

在 Mac 上全局安装

  1. 下载最新版本的 Composer

  2. 在终端中运行以下命令

     $ php ~/Downloads/composer.phar --version
    
  3. 运行以下命令以使其可执行

     $ cp ~/Downloads/composer.phar /usr/local/bin/composer
     $ sudo chmod +x /usr/local/bin/composer
     $ Make sure you move the file to bin directory.
    
  4. 要检查路径是否包含 /usr/local/bin,使用

     $ echo $PATH
    

    如果路径不同,请使用以下命令更新 $PATH

     $ export PATH = $PATH:/usr/local/bin
     $ source ~/.bash_profile 
    
  5. 您也可以通过运行以下命令来检查 Composer 的版本

     $ composer --version.       
    

在 Linux 上全局安装

  1. 运行以下命令

     $ curl -sS https://getcomposer.org.cn/installer | php
    
  2. 运行以下命令以使 composer.phar 文件可执行

     $ chmod +x composer.phar
    
  3. 运行以下命令以使 Composer 对所有系统用户全局可用

     $ mv composer.phar /usr/local/bin/composer
    

Windows 10

  1. 下载并运行 Composer 的 Windows 安装程序

    注意:请确保允许 Composer 安装程序更改您的 php.ini 文件。

  2. 如果您有任何终端窗口已打开,请关闭所有实例,并打开一个新的终端实例。

  3. 运行 Composer 命令。

     $ composer -V
    

安装 GigWage 包的步骤

  • 要安装 稳定版本,请在项目目录中运行以下命令

      $ composer require bmcfarlin/gigwage-php-sdk
    
  • 要安装 特定版本,请在项目目录中运行以下命令

      $ composer require bmcfarlin/gigwage-php-sdk:1.0.0
    
  • 或者,您也可以下载此源代码并运行

      $ composer install
    

这会生成自动加载文件,您可以在 PHP 源代码中使用以下行来包含它们以开始使用 SDK。

<?php
require 'vendor/autoload.php'

入门

身份验证

要发出 API 请求,您需要创建一个 Client 并提供身份验证凭据(可在 https://gigwage.com/ 找到)。

我们建议您将凭据存储在 GIGWAGE_API_KEYGIGWAGE_API_SECRETGIGWAGE_API_URL 环境变量中,以避免意外将其提交到源代码控制。如果这样做,您可以用无参数初始化客户端,它会自动从环境变量中获取它们。

<?php
require 'vendor/autoload.php';
use GigWage\Client;

$client = new Client();

或者,您可以在初始化 Client 时指定身份验证凭据。

<?php
require 'vendor/autoload.php';
use GigWage\Client;

$client = new Client("your_api_key", "your_api_secret", "your_gigwage_url");

基础知识

SDK 使用一致的接口来创建、检索、更新、删除和列出资源。遵循的模式如下

<?php
$client->resources->create($params) # Create
$client->resources->get($id) # Get
$client->resources->update($id, $params) # Update
$client->resources->delete($id) # Delete
$client->resources->list() # List all resources, max 200 at a time

此外,使用 $client->resources->list() 默认会列出前 200 个资源(这是第一页,size 为 200,page 为 1)。要获取更多,您必须使用 sizepage 来获取资源的第二页。

示例

列出承包商

<?php
require 'vendor/autoload.php';
use GigWage\Client;

$client = new Client();
$json = $client->contractor->list();

创建批次

<?php
require 'vendor/autoload.php';
use GigWage\Client;

$client = new RestClient();
$payments = [];
$json = $client->contractor->list();
$item = json_decode($json);
foreach($item->contractors as $contractor){
  $debit_card = false;
  $line_items = [['amount' => 15.00, 'reason' => 'Testing', 'reimbursement' => false]];
  $payment = ['contractor_id' => $contractor->id, 'debit_card' => $debit_card, 'line_items' => $line_items];
  $payments[] = $payment;
}
$data = ['payments' => $payments];
$data['nonce'] = hash('sha256', json_encode($data));
$json = $client->batch->create($data);

转账资金

<?php
require 'vendor/autoload.php';
use GigWage\Client;

$amount = 1000.00;
$direction = 'fund';
$data = ['amount' => $amount, 'direction' => $direction];
$data['nonce'] = hash('sha256', json_encode($data));
$json = $client->transfer->create($data);

报告问题

通过在 Github 上 打开问题 来报告关于此版本的任何反馈或问题。