aasanakey / fixerphp
一个基于apilayer fixer api提供的API的外汇汇率和货币转换的软件包
0.0.1
2024-01-03 16:59 UTC
Requires
- php: ^8.0
- guzzlehttp/guzzle: ^7.8
Requires (Dev)
- mockery/mockery: ^1.6
- pestphp/pest: ^2.10
README
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。