netglue/zf2-money-module

此包已被弃用且不再维护。没有建议的替代包。

这是一个ZF2模块,集成了Sebastian Bergmans货币库,并在某个时候还会做其他事情...

安装次数: 3,256

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

类型:模块

3.1.0 2019-07-08 20:36 UTC

This package is auto-updated.

Last update: 2021-09-02 12:04:38 UTC


README

不再积极维护 - 自行承担风险...

虽然你使用这个库的可能性不大,但你不应使用它。它目前存在一个需要将库的 zend-form 锁定到 2.12.0 的问题。它已过时,你可能应该直接导入 moneyphp/money 并自行配置。

一个旨在简化货币处理的Zend Framework 2模块。

Code Climate Test Coverage

基本上,此模块导入了 Sebastian Bergmann的货币库,但可能颇具争议地没有将其作为依赖项通过composer等使用。最初这么做的原因是为了访问Currency中的私有静态成员变量,但自从很久以前为ZF2创建这个模块以来,情况已经发生了变化。这是一个有用的模块,但说实话,它应该使用 moneyphp/money 作为其值对象。我有一些使用NetglueMoney命名空间中的货币值对象的遗留代码,所以目前保持原样,但将来我可能会迁移到moneyphp。

需要注意的是,货币值对象将金额存储为整数,即给定货币的最小单位。

安装

$ composer require netglue/zf2-money-module

可用组件

货币列表

货币列表旨在提供一种简单的方法来配置应用程序将使用/接受/之类的ISO货币。可以通过服务定位器使用'NetglueMoney\Service\CurrencyList'检索的简单对象。请查看module.config.dist.php以获取有关配置的更多信息。

货币代码验证器

验证基本的代码格式,并使用货币列表服务来排除不“允许”或未知的代码。

货币选择元素

如果需要其验证器和可用货币列表都指向相同的货币列表,则应通过FormElementManager检索此选择元素。

在您的表单元素配置中,您应使用其完全限定的类名\NetglueMoney\Form\Element\SelectCurrency引用选择元素 - 将自动为其添加CurrencyCode验证器。

货币表单

可以接受或填充到NetglueMoney\Money\Money实例的表单。如果您查看测试,您将找到一个将模型绑定到填充货币实例的表单的示例。

视图助手

moneyFormat()

主要基于 Zend\I18n\View\Helper\CurrencyFormat,但参数已更改

$money = new Money(123456, new Currency('GBP'));
echo $this->moneyFormat($money); // £1,234.56 (Assuming default locale of en_GB)
echo $this->moneyFormat($money, 'de_DE'); // 1.234,56 £
echo $this->moneyFormat($money, 'de_DE', false); // 1.234 £

您还可以指定自定义格式模式 - 更多信息请参阅 NumberFormatter 文档。

变更日志

3.1.0

  • 一系列的 CS 修复
  • 字段集的 getMoney() 方法现在更有可能返回一个货币实例 😬 🤞

3.0.0

  • 移除了初始化器,并更新到需要 PHP >= 7.1
  • 与 Zend Framework 3 兼容
  • 理论上也与 Expressive 兼容

0.1.3

0.1.2

  • 添加了 formMoney 视图助手和测试,用于渲染文本输入,这些输入旨在用于输入货币。接受区域设置并使用数字格式化器将输入值格式化为区域字符串
  • 添加了 setMoney()getMoney() 方法到货币字段集,以便在没有绑定特定表单中的实体并且/或者不使用表单元素管理器时更容易使用

0.1.1

  • 添加了 moneyFormat 视图助手和测试

0.1.0

  • 初始版本包含货币和货币值对象,ZF2 模块设置以及货币字段集、伴随的 hydrator 和其他内容...

未来计划