在树枝上显示科学记数法

时间:2017-06-23 08:59:43

标签: php filter twig scientific-notation

我试图在scientific notation中使用我的树枝模板显示双精度。 有没有办法做到这一点?

3 个答案:

答案 0 :(得分:2)

您可以将format过滤器与sprintf函数的格式化程序一起使用,例如:

{% set foo = 0.00000000751  %}

{{ "Scientific notation: %e"|format(foo) }}

{{ "Scientific notation: %g"|format(foo) }}
  

科学记数法:7.510000e-9

     

科学记数法:7.51e-9

Here一个有效的例子。

答案 1 :(得分:0)

我这样做是为了在昏迷后只显示两个数字:

{{ ("%e"|format(mydouble)) |slice(0, 4)}}{{ ("%e"|format(mydouble)) [8:]}}

答案 2 :(得分:0)

这里有另一种方法,可让您控制要显示的有效位数:

{{ 2.9999999999|format_scientific_number({min_significant_digits_used: 2,max_significant_digits_used: 6,rounding_mode: 'halfup'})|replace({'E0':''}) }}

首先,将format_scientific_number()与参数一起使用。 以后,如果出现丑陋的E0,则必须将其替换。

要使用format_scientific_number(),您必须安装twig扩展名,此处简要说明: https://twig.symfony.com/doc/2.x/filters/format_number.html