Symfony2默认数字格式

时间:2013-04-24 14:09:25

标签: php symfony

我想更改Symfony 2项目中的默认数字格式。

我打算将小数点分隔符显示为逗号10.55,而不是打印10,55之类的数字。

不在Twig模板中,而是在所有表单中。如果我想要的话就像使用number_format function一样简单。

我已经在config.yml文件中设置了我的语言环境。

2 个答案:

答案 0 :(得分:0)

您可能在表单类型中使用了number类型字段。

所以你可以使用grouping选项:

  

[...]数字将以逗号或句号分组(取决于您的   locale):12345.123将显示为12,345.123。

您的代码如下所示:

// src/Acme/MyBundle/Form/Type/MyType.php
namespace Acme\MyBundle\Form\Type;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;

class MyType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('mynumber', 'number', array('grouping' => true));
    }

    public function getName()
    {
        return 'my';
    }
}

(使用money字段类型时,您有相同的选项)

答案 1 :(得分:-1)

我还使用了'号码'字段类型,但我不需要表单类型中的分组选项,从我可以测试。在twig模板中渲染它就足够了:请参阅下面的示例{{ discount.discountRate }}是一个浮点数。如果您将其替换为' 75.3869',您会发现' 75,39'

{# number with 2 decimal places, decimal comma, no thousands separator #}
{{ discount.discountRate|number_format(2, ',', '') }}%