我试图在scientific notation中使用我的树枝模板显示双精度。 有没有办法做到这一点?
答案 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