【问题标题】:How would I omit zero value decimals in a number format using Twig?如何使用 Twig 以数字格式省略零值小数?
【发布时间】:2017-09-29 22:57:13
【问题描述】:

我想去掉无意义的十进制数字,像这样:

14.50   => 14.5
14.0500 => 14.05
14.000  => 14

我正在搜索如何做到这一点,我找到了以下方法:

{{ number|trim('0')|trim('.') }}

但上述过滤器的唯一问题是以下情况:

0.023 => 023

有谁知道我怎样才能做到这一点?

【问题讨论】:

    标签: php symfony twig decimal decimalformat


    【解决方案1】:

    你没有在任何地方提到它,但我假设你的“数字”变量实际上是字符串,否则默认行为实际上就是你所期望的......

    我的建议是简单地将那些 string 变量转换为您 PHP 代码中某处的 float 变量,Twig 将按照您的预期呈现它们。

    也就是说,如果您真的需要在 Twig 中执行此操作,您可以通过对字符串执行任何算术运算来自动将字符串转换为数字。请参阅以下示例:

    {% set stringNumber = '14.0500' %}
    {% set number = 14.0500 %}
    
    {{ stringNumber }}      {# Prints 14.0500 #}
    {{ number }}            {# Prints 14.05 #}
    {{ stringNumber + 0 }}  {# Prints 14.05 #}
    

    此处为完整示例:https://twigfiddle.com/hwl82b

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多