cleaniquecoders/money-wrapper

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

MoneyPHP Wrapper

v1.2.0 2019-02-27 11:59 UTC

README

Build Status Latest Stable Version Total Downloads License

MoneyPHP Wrapper

这是一个Money的包装器。

此包装器

  1. 提供Money辅助函数 - money()
  2. 适用于Laravel框架,但也适用于Laravel框架之外。
  3. 提供常见用法,例如
  • 人类可读性 - RM 1.00, RM 345.00
  • 通用显示 - 1.00, 345.00
  • 机器(数据库中存储的整数格式)- 100, 34500
  • 固定汇率转换 - $ 1 > RM 3.87

安装

  1. 要在您的Laravel项目中安装cleaniquecoders/money-wrapper,只需从您的终端运行composer require命令
$ composer require cleaniquecoders/money-wrapper
  1. 然后在您的config/app.php中将以下内容添加到providers数组中
CleaniqueCoders\MoneyWrapper\MoneyWrapperServiceProvider::class,
  1. 在相同的config/app.php中,将以下内容添加到aliases数组中
'MoneyWrapper' => CleaniqueCoders\MoneyWrapper\MoneyWrapperFacade::class,
  1. 发布Money Wrapper配置
$ php artisan vendor:publish --tag=money-wrapper-config

您可以根据国家添加更多货币详情。有关详细信息,请参阅下面的贡献部分。

用法

获取Money包装器实例

默认情况下,将使用MYR,马来西亚林吉特货币。

您可以通过.env文件或调用money()辅助函数时传递国家Alpha 2代码来覆盖它。

$money = money(); // by default it will use MY
$moneyUsd = money('US'); // pass the country code - ISO Alpha 2

在发布Money包装器配置文件并添加更多受支持货币后,您可以添加更多货币。

请参阅国家代码及其货币swift代码和符号在货币列表中的信息。

获取货币格式

echo money()->toHuman(100); // RM 1.00, useful for human readability
echo money()->toCommon(100); // 1.00
echo money()->toMachine('1.00'); // 100, always store in database as integer. 

转换固定汇率

$fixedExchange = [
    'MYR' => [
        'USD' => 3.87,
    ],
];
echo money()->convertFixedRate($fixedExchange, 100, 'USD')->getAmount(); // 387

建议在数据库中使用的数据类型是大数据整数

贡献

根据以下资源更新货币列表(config/currency.php

  1. 使用国家列表中定义的Country ISO Alpha 2代码作为键。
  2. 参考货币列表以获取可用的货币。
  3. 使用www.xe.com中声明的符号。

结构如下

[
	'MYR' => [
		'swift_code' => 'MYR',
		'symbol' => 'RM'
	]
]

许可

此包是开源软件,受MIT许可的许可。