aasanakey/fixerphp

一个基于apilayer fixer api提供的API的外汇汇率和货币转换的软件包

0.0.1 2024-01-03 16:59 UTC

This package is auto-updated.

Last update: 2024-09-05 06:11:50 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

Fixer是一个基于Apilayer Fixer API(https://apilayer.com/marketplace/fixer-api)提供的当前和历史汇率信息的简单PHP库(APILayer (Fixer Api))

要求

  • PHP >= 8.0
  • guzzlehttp >= 7.8

安装

composer require aasanakey/fixerphp

用法

软件包需要API密钥

1. 货币转换

要将一种货币转换为另一种货币,您可以链接方法

require 'vendor/autoload.php';

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->convert()
        ->from('USD')
        ->to('EUR')
        ->get();

这将返回转换后的金额或失败时返回 null

要转换的金额默认为 1,您可以指定金额

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->convert()
        ->from('USD')
        ->to('EUR')
        ->amount(50)
        ->get();

可用方法

  • 使用历史汇率 YYYY-MM-DD 转换货币
use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->convert()
        ->from('USD')
        ->to('EUR')
        ->date('2019-08-01')
        ->get();
  • 将转换后的金额四舍五入到小数位
use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->convert()
        ->from('USD')
        ->to('EUR')
        ->round(2)
        ->get();

2. 最新汇率

要获取最新汇率,您可以链接方法

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->rates()
        ->latest()
        ->get();

 /*
 [
  "base": "USD",
  "date": "2022-04-14",
  "rates": [
    "EUR": 0.813399,
    "GBP": 0.72007,
    "JPY": 107.346001
  ],
  "success": true,
  "timestamp": 1519296206
]
*/

这将返回所有可用货币的 array 或失败时返回 null

可用方法

  • 就像货币转换一样,您可以链接任何可用的方法
use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->rates()
        ->latest()
        ->symbols(['USD', 'EUR', 'EGP']) //An array of currency codes to limit output currencies
        ->base('GBP') //Changing base currency (default: EUR). Enter the three-letter currency code of your preferred base currency.
        ->get();

3. 历史汇率

大多数货币的历史汇率都可以追溯到1999年。

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->rates()
        ->historical('2013-12-24') //`YYYY-MM-DD` Required date parameter to get the rates for
        ->get();

/** 
 [
  "base": "GBP",
  "date": "2013-12-24",
  "historical": true,
  "rates": {
    "CAD": 1.739516,
    "EUR": 1.196476,
    "USD": 1.636492
  },
  "success": true,
  "timestamp": 1387929599
 ]
 */

Fixer::key('your api key')
        ->rates()
        ->historical('2013-12-24')
        ->symbols(['USD', 'EUR', 'EGP']) //An array of currency codes to limit output currencies
        ->base('GBP')
        ->get();

/**
[
  "base": "GBP",
  "date": "2013-12-24",
  "historical": true,
  "rates": {
    "CAD": 1.739516,
    "EUR": 1.196476,
    "USD": 1.636492
  },
  "success": true,
  "timestamp": 1387929599
]
*/

与最新汇率相同,您可以链接任何可用的方法

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->rates()
        ->historical('2020-01-01')
        ->symbols(['USD', 'EUR', 'CZK'])
        ->base('GBP')
        ->get();

4. 时间序列汇率

时间序列是您选择的两个日期之间的每日历史汇率,时间范围最大为365天。这将返回 array 或失败时返回 null

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->rates()
        ->timeSeries('2021-05-01', '2021-05-02') //`YYYY-MM-DD` Required dates range parameters
        ->get();

/**
[
  "base": "EUR",
  "end_date": "2012-05-03",
  "rates": {
    "2012-05-01": {
      "AUD": 1.278047,
      "CAD": 1.302303,
      "USD": 1.322891
    },
    "2012-05-02": {
      "AUD": 1.274202,
      "CAD": 1.299083,
      "USD": 1.315066
    },
    "2012-05-03": {
      "AUD": 1.280135,
      "CAD": 1.296868,
      "USD": 1.314491
    }
  },
  "start_date": "2012-05-01",
  "success": true,
  "timeseries": true
]
 */

5. 波动

检索关于货币每日波动的信息,时间范围最大为365天。这将返回 array 或失败时返回 null

use Aasanakey\Fixer\Fixer;

Fixer::key('your api key')
        ->rates()
        ->fluctuations('2021-03-29', '2021-04-15') //`YYYY-MM-DD` Required dates range parameters
        ->symbols(['USD','JPY']) //[optional] An array of currency codes to limit output currencies
        ->base('EUR') //[optional] Changing base currency (default: EUR). Enter the three-letter currency code of your preferred base currency.
        ->get();

/**
 [
  "base": "EUR",
  "end_date": "2018-02-26",
  "fluctuation": true,
  "rates": {
    "JPY": {
      "change": 0.0635,
      "change_pct": 0.0483,
      "end_rate": 131.651142,
      "start_rate": 131.587611
    },
    "USD": {
      "change": 0.0038,
      "change_pct": 0.3078,
      "end_rate": 1.232735,
      "start_rate": 1.228952
    }
  },
  "start_date": "2018-02-25",
  "success": true
 ]
 */

许可证

MIT许可证(MIT)。有关更多信息,请参阅LICENSE