rolice / laravel-currency
使用Yahoo! Finance API获取汇率并将其存储在数据库中以便进一步使用的包。
Requires
- php: >=5.6.0
- ext-curl: *
- illuminate/config: >=5.1
- illuminate/database: >=5.1
- illuminate/routing: >=5.1
- illuminate/support: >=5.1
Requires (Dev)
- phpunit/phpunit: 4.0.*
This package is not auto-updated.
Last update: 2024-09-23 06:28:34 UTC
README
使用外部API服务下载汇率并将其存储在数据库中以便进一步使用的Laravel包。此包旨在通过提取汇率并缓存到数据库和高级缓存引擎中,作为货币转换服务。
支持的框架版本:>= 5.1。
安装
要安装此包,您应该从composer仓库中要求它。这可以通过执行以下require命令来完成:composer require rolice/laravel-currency
,或者通过手动将要求行添加到您的composer.json
中,如下所示:
{ "require": { "rolice/laravel-currency": "dev-master", }, }
当包安装到您的项目vendor目录中时,您可以通过其服务提供者轻松启用该包。为此,在config/app.php
中的providers
部分(现有的配置数组)中添加一行。
Rolice\LaravelCurrency\ServiceProvider::class
现在包已启用,但您应该准备数据库并发布包内容
php artisan vendor:publish
当内容发布后,您应编辑config/laravel-currency/laravel-currency.php
- 主要包配置文件,特别是connection
设置,其中您应定义要存储汇率信息的数据库连接。准备好后,您可以使用以下Artisan命令执行表创建和设置。
php artisan migrate
上述两行将发布配置和迁移到项目目录 - config/
和database/migrations
。之后,将执行迁移,并在配置的连接上创建新表。
现在您已准备好。该包已安装并可供使用。
同步
您可以通过执行包命令Sync
来调用同步。这可以通过Artisan执行,如下所示:php artisan currency:sync
。您可以使用Kernel
命令将其设置为计划任务。
// ... class Kernel extends ConsoleKernel /** * The Artisan commands provided by your application. * * @var array */ protected $commands = [ // some other previously registered commands \Rolice\LaravelCurrency\Commands\Sync::class, // Add this line in the console kernel ]; protected function schedule(Schedule $schedule) { // Register periodic schedule for the command like. You can specify interval by yourself. $schedule->command('currency:sync')->monthly(); } }
使用
默认情况下,该包将定义其自己的路由和控制器 - <base>/currency
。在此处,您可以调用所有货币的列表或调用转换,如下所示:<base>/currency/convert?from=<currency_code>&to=<currency_code>&amount=<amount>
转换将自动将给定的货币金额转换为目标货币。金额参数是可选的,如果省略,则默认为1
- 精确的转换率。货币代码是所需货币的官方三位ISO代码。
您将收到一个包含数字的成功JSON响应或包含失败时发生的错误的对象。成功转换的示例
请求
http://<yourdomain.com>/currency/convert?from=BGN&to=EUR
响应
0.509279