在树枝模板引擎中是否有任何用于格式化货币或数字的过滤器或类似内容?
Answers:
{{ 100*done/total | number_format(2) }}
,花了我30分钟的时间才弄清楚为什么结果是错误的。你必须写{{ (100*done/total) | number_format(2) }}
。
total
到树枝过滤器
该枝条扩展库包含大量用于嫩枝有用的扩展。随着版本1.2.0的发布,localizedcurrency
筛选器已添加到Intl扩展。顾名思义,此过滤器将根据当前语言环境格式化数字。它使用PHP的NumberFormatter
类来这样做。
该过滤器非常易于使用。过滤器唯一需要的参数是3个字母的ISO 4217货币代码。例如,要显示27.99欧元的金额,请使用以下代码行:
{{ price|localizedcurrency('EUR') }}
根据语言环境,这将显示不同的结果:
€27.99
如果语言环境设置为 en
27,99 €
如果语言环境设置为 fr
€ 27,99
如果语言环境设置为 nl
有关Intl扩展的安装说明,请参见此单独的答案。
Thousand Separator
in localizednumber
?
NumberFormatter
,但是您必须编写一个自定义的Twig扩展,因为localizedcurrency
过滤器不支持它。我认为这值得它自己的堆栈溢出问题。如果您发布问题并将链接发送给我,我将在此处发布答案。
使用 format_currency
从2.12版format_currency
开始,添加了过滤器。官方文档中的更多信息https://twig.symfony.com/doc/2.x/filters/format_currency.html
format_currency
过滤器是相当糟糕寿,因为它是常见的存储钱为整数,和过滤器显示整个整数...
localizedcurrency
过滤器在Twig中格式化货币。请参阅我的答案以获取更多信息。