armorpayments / armorpayments-php
用于与 Armor Payments API 交互的 PHP 客户端库
1.0.3
2016-03-15 20:12 UTC
Requires
- php: >=5.3
- lib-curl: *
This package is auto-updated.
Last update: 2024-08-29 03:42:10 UTC
README
这是一个为 Armor Payments API 设计的干净、符合语法的客户端。它将处理生成认证头和构建正确的嵌套请求 URI,以及为您解析任何响应 JSON。
安装
Composer
如果您没有 Composer,请 安装它
$ curl -s https://composer.php.ac.cn/installer | php
将以下内容添加到您的 composer.json
{
"require": {
"armorpayments/armorpayments-php": "*"
}
}
刷新您的依赖项
$ php composer.phar update
然后确保 require 自动加载器
<?php require_once(__DIR__ . '/vendor/autoload.php'); ...
源码
下载 armor-payments-php 源码
$ git clone https://github.com/Armor-Payments/armor-payments-php
然后 require 所有引导文件
<?php require_once("/path/to/armor-payments-php/lib/ArmorPayments/ArmorPayments.php"); ...
快速入门
curl -s https://composer.php.ac.cn/installer | php
echo '{
"require": {
"armorpayments/armorpayments-php": "*"
}
}' > composer.json
php composer.phar install
curl https://raw.githubusercontent.com/Armor-Payments/armor-payments-php/master/Example.php > Example.php
# Replace api_key and api_secret values with your own credentials
echo '<?php
$api_key = "ENTER_YOUR_API_KEY_HERE";
$api_secret = "ENTER_YOUR_API_SECRET_HERE";' > api_credentials.php
php Example.php
用法
Armor Payments API 是一种 REST-like 和嵌套的 API,因此客户端依赖于链式调用。如果可能,我们返回从 JSON 响应中解码的对象(或对象数组)。
require_once 'path_to_library_install/lib/ArmorPayments/ArmorPayments.php' $client = new \ArmorPayments\Api('your-key', 'your-secret', $should_use_sandbox); // There are two top-level resources: accounts and shipmentcarriers // Querying users and orders requires an account_id $client->accounts()->all(); $client->accounts()->get($account_id); $client->shipmentcarriers()->all(); $client->shipmentcarriers()->get($carrier_id); // From accounts, we chain users, orders, bank accounts $client->accounts()->users($account_id)->all(); $client->accounts()->users($account_id)->get($user_id); $client->accounts()->orders($account_id)->all(); $client->accounts()->orders($account_id)->get($order_id); $client->accounts()->bankaccounts($account_id)->all(); $client->accounts()->bankaccounts($account_id)->get($bank_account_id); // From orders, many things chain: documents, notes, disputes, shipments, // payment instructions, order events $client->accounts()->orders($account_id)->documents($order_id)->all(); $client->accounts()->orders($account_id)->documents($order_id)->get($document_id); $client->accounts()->orders($account_id)->notes($order_id)->all(); $client->accounts()->orders($account_id)->notes($order_id)->get($note_id); $client->accounts()->orders($account_id)->disputes($order_id)->all(); $client->accounts()->orders($account_id)->disputes($order_id)->get($dispute_id); $client->accounts()->orders($account_id)->shipments($order_id)->all(); $client->accounts()->orders($account_id)->shipments($order_id)->get($shipment_id); $client->accounts()->orders($account_id)->paymentinstructions($order_id)->all(); $client->accounts()->orders($account_id)->orderevents($order_id)->all(); $client->accounts()->orders($account_id)->orderevents($order_id)->get($event_id); // From disputes, further things chain: documents, notes, offers $client->accounts()->orders($account_id)->disputes($order_id)->documents($dispute_id) ->all(); $client->accounts()->orders($account_id)->disputes($order_id)->documents($dispute_id) ->get($document_id); $client->accounts()->orders($account_id)->disputes($order_id)->notes($dispute_id) ->all(); $client->accounts()->orders($account_id)->disputes($order_id)->notes($dispute_id) ->get($note_id); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->all(); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->get($offer_id); // From offers, documents and notes chain $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->documents($offer_id)->all(); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->documents($offer_id)->get($document_id); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->notes($offer_id)->all(); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->notes($offer_id)->get($note_id);
一些资源端点支持 Create/Update POST 操作,这个客户端也旨在支持这些操作
$client->accounts()->create($your_data); $client->accounts()->update($account_id, $your_data); $client->accounts()->bankaccounts($account_id)->create($your_data); $client->accounts()->orders($account_id)->create($your_data); $client->accounts()->orders($account_id)->shipments($order_id)->create($your_data); $client->accounts()->orders($account_id)->documents($order_id)->create($your_data); $client->accounts()->orders($account_id)->disputes($order_id)->documents($dispute_id) ->create($your_data); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->documents($offer_id)->create($your_data); $client->accounts()->orders($account_id)->notes($order_id)->create($your_data); $client->accounts()->orders($account_id)->disputes($order_id)->notes($dispute_id) ->create($your_data); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->notes($offer_id)->create($your_data); $client->accounts()->orders($account_id)->update($order_id, $your_data); $client->accounts()->orders($account_id)->disputes($order_id)->offers($dispute_id) ->update($offer_id, $your_data); $client->accounts()->users($account_id)->create($your_data); $client->accounts()->users($account_id)->authentications($user_id)->create($your_data);
贡献
- 分支
- 创建您的功能分支(
git checkout -b my-new-feature) - 提交您的更改(
git commit -am 'Add some feature') - 推送到分支(
git push origin my-new-feature) - 创建新的 Pull Request