4

大家好,感谢阅读。我想知道如何将数字格式化为货币,或者只是在末尾附加€。我在 yii 框架的管理页面上的 gridview 中工作。我有这个,例如

'columns'=>array(
        'title',
            array(
                'name'=>'cost',
                'value'=>'$data->cost',
            )
4

3 回答 3

8

Yii 的方式是使用Yii 现有的货币格式化程序,如下所示:

array(
      'name'=>'cost',
      'value'=>'Yii::app()->numberFormatter->formatCurrency($data->cost, "EUR")',
     )
于 2013-05-13T13:15:34.127 回答
2

您可以在值中使用 php 函数和一些静态文本。例子:

'columns'=>array(
        'title',
            array(
                'name'=>'cost',
                'value'=>'$data->cost . " €" ',
            )

如果您需要更多地使用这种格式,我建议编写一个自定义函数到控制器或使用自定义货币函数扩展 CFormatter 并将其用作值。请阅读下面的 yii 主页手册。 http://www.yiiframework.com/wiki/278/cgridview-render-customized-complex-datacolumns/

于 2013-05-12T18:00:13.187 回答
1

我使用 php 的money_format()来获得正确的格式。

它可能看起来像这样:

'columns'=>array(
    'title',
        array(
            'name'=>'cost',
            'value'=>'money_format("%!i", $data->cost)',
        )

您可以在调用 money_format()之前通过设置语言环境来指定货币,如下所示:

setlocale(LC_MONETARY, 'ja_JP');

ja_JP 代表日元,仅用作示例。更多在这里。

于 2013-05-13T03:24:09.463 回答