为什么我的数字用逗号显示?

时间:2017-04-24 07:08:16

标签: javascript php symfony decimal

我正在使用symfony 2.8,我正在显示一个带有十进制数字的表单,在我的html中,我有转储(form.numberwithdecial),这有一个格式(66.45)例如,但是当我的表单被渲染时,它有这种格式(66,45)。 我用这些数字计算,这是一个问题。因为我的resutl返回NaN。如何使用带小数而不是逗号来渲染带小数的数字?谢谢。

Twig:
... some code
<td class="form-group tdpvd">
            {% if form_errors(articulo.pvd) %}
                {{ form_widget(articulo.pvd, {'attr': {'class': 'form-control pvd error listener', 'data-prototype':'__articulos__'}}) }}
            {% else %}
                {{ form_widget(articulo.pvd, {'attr': {'class': 'form-control pvd listener', 'data-prototype':'__articulos__'}}) }}
            {% endif %}
        </td>
        <td class="form-group tdpvp">{{ dump(articulo) }}
            {% if form_errors(articulo.pvp) %}
                {{ form_widget(articulo.pvp, {'attr': {'class': 'form-control pvp pvp__articulos__ error listener', 'data-prototype':'__articulos__'}}) }}
            {% else %}
                {{ form_widget(articulo.pvp, {'attr': {'class': 'form-control pvp pvp__articulos__ listener', 'data-prototype':'__articulos__'}}) }}
            {% endif %}
        </td>
        <td class="form-group tdcantidad" style="width: 10em">
            {% if form_errors(articulo.cantidad) %}
                {{ form_widget(articulo.cantidad, {'attr': {'class': 'form-control cantidad__articulos__ error listener cantidad', 'data-prototype':'__articulos__'}}) }}
            {% else %}
                {{ form_widget(articulo.cantidad, {'attr': {'class': 'form-control cantidad__articulos__ listener cantidad', 'data-prototype':'__articulos__'}}) }}
            {% endif %}
        </td>
... some code 

编辑:

我更改了我的twig配置的config.yml:

app/config/config.yml
# Twig Configuration
twig:
    debug:            "%kernel.debug%"
    strict_variables: "%kernel.debug%"
    number_format:
        decimals: 2
        decimal_point: '.'

2 个答案:

答案 0 :(得分:0)

symfony配置中的twig衍生物还支持以下条目:

number_format:
    decimals: 2
    decimal_point: '.'

答案 1 :(得分:0)

您可以通过将区域设置更改为使用&#34;的方式来更改数字的显示方式。&#34;而是使用Twig中的number_format过滤器。如果您在整个应用程序中默认需要格式化,后者可能会很乏味。

更改区域设置

config.yml:

parameters:
    locale: en # Or any other locale that uses . instead of ,
framework:
    templating:
        engines: ['twig']
    default_locale:  "%locale%"

在Twig模板中使用number_format:

{{ 66.45 | number_format(2, '.', ',') }}