【发布时间】:2016-04-26 05:12:16
【问题描述】:
我有一个来自数据库的号码,例如 7.0 或 7.7 。当我打印值时, 7.7 按原样打印,但 7.0 仅打印为 7。有没有办法将 7.0 打印为 7.0 。我在 sf2 中使用 twig 模板。
这就是我打印这些值的方式
{{ object.value }}
【问题讨论】:
-
使用
floatval()函数。
我有一个来自数据库的号码,例如 7.0 或 7.7 。当我打印值时, 7.7 按原样打印,但 7.0 仅打印为 7。有没有办法将 7.0 打印为 7.0 。我在 sf2 中使用 twig 模板。
这就是我打印这些值的方式
{{ object.value }}
【问题讨论】:
floatval()函数。
您可以使用number_format Twig 过滤器,例如:
{{ object.value|number_format }}
完整示例:
{{ 9800.333|number_format(2, '.', ',') }}
更多信息在doc here
【讨论】:
number_format(1, '.', ',') 吗?看起来 OP 只想要一位小数。
这可能不是正确的方法,但至少我有一些工作
首先我检查了长度,如果长度是 1 或 2,我打印了值并附加了 .0 否则我只是打印了值。
{% if (device.ph_value|length == 1 or device.ph_value|length == 2)%}
{{device.ph_value}}.0
{% else %}
{{device.ph_value}}
{% endif %}
【讨论】:
7 或77 的长度?
777呢?
echo number_format(object.value,1);
这应该将 7.0 输入为 7.0 而不是 7
【讨论】:
你可以做一些进一步的事情来保持价值。
$integer = filter_var(7.7, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
print_r($integer);
output
7.7
【讨论】: