此包已被废弃且不再维护。未建议替代包。

一个用于处理货币显示和兑换的Laravel包。

v0.1.3 2020-02-12 10:10 UTC

README

将货币汇率引入您的Laravel应用程序

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

安装

通过Composer

composer require victoravelar/geld

入门

Geld 允许您使用 Fixer.io 作为数据源,拉取并存储货币汇率,它高度可配置且完全根据您的需求。

使用方法

使用 FIXER_API_KEY 作为名称,将您的 Fixer.io API 密钥设置为项目环境变量。

配置

有关配置选项的详细信息,请参阅 config/geld.php,其中包含可用的选项以及每个选项的详细说明。

如果您接受默认设置,则可以继续操作;如果您想更改某些设置,请运行 php artisan vendor:publish 并从列表中选择 GeldServiceProvider

geld.php 文件将被发布到Laravel默认配置文件夹。

设置调度器

要使用 Laravel 中的任务调度,您需要在服务器上启动 Cron,您可以参考相关 Laravel 文档 获取详细说明。

拉取汇率

如果您使用的是免费 Fixer.io 账户,您有权访问每小时更新的数据,建议尽可能频繁地拉取汇率。

将以下代码复制并粘贴到您的 app/Console/Kernel.php 文件中,以每小时拉取一次汇率。

$schedule->command(UpdateExchangeRatesCommand::class)->hourlyAt(5);

此代码片段指示您的 Laravel 应用程序在每小时 5 分钟后拉取汇率。

历史表

此表可能成为潜在的大信息容器(如果启用),因为每小时它都会从 API 拉取新记录,历史表旨在解决在特定时间显示或计算某一天执行的条目时的问题,或者在使用旧汇率时需要访问旧汇率的情况。

如果您只需要最新的汇率,则可以将 history_mode 配置变量设置为 false 来禁用历史存储。

保留期

我们提供了一个命令,它会软删除超过定义的保留期的旧记录,您可以使用 retention 配置变量来更改此保留期。

要安排此命令的执行,请将以下代码片段复制并粘贴到 app/Console/Kernel.php 文件中。

$schedule->command(CheckRetentionCommand::class)->weekly();

数据销毁

彻底消失

资金还包含一个焚烧器,此命令将永久删除超过定义的焚烧期记录,您可以使用 incinerate_after 配置变量来控制此时间窗口。

如果您不希望从历史表中永久删除信息,可以通过将 incinerate 配置变量设置为 false 来禁用焚烧器。

要安排此命令的执行,请将以下代码片段复制并粘贴到 app/Console/Kernel.php 文件中。

$schedule->command(DataIncineratorCommand::class)->monthly();

事件

每次从 Fixer.io 成功拉取后,Geld 都会调度一个 RatesUpdated 事件,您可以挂钩到该事件。

变更日志

有关最近变更的更多信息,请参阅 CHANGELOG

测试

$ composer test

贡献

有关详细信息,请参阅 CONTRIBUTINGCODE_OF_CONDUCT

安全

如果您发现任何与安全相关的问题,请通过电子邮件 deltatuts@gmail.com 而不是使用问题跟踪器。

鸣谢

许可

MIT 许可证 (MIT)。请参阅 许可文件 获取更多信息。