手册currencyCode
:_ _
指示要使用的默认货币的 3 个字母 ISO 4217 货币代码
尝试设置currencyCode
为'EUR'
(尽管这似乎并不那么重要)并将格式化程序放在一个数组中
[
'attribute' => 'Score',
'format' => [
'currency',
'EUR',
[
\NumberFormatter::MIN_FRACTION_DIGITS => 0,
\NumberFormatter::MAX_FRACTION_DIGITS => 0,
]
],
],
这需要安装 PHP intl 扩展。可以通过调用来测试分机的状态extension_loaded('intl')
。在没有扩展的情况下,您最好的选择可能是编写自定义格式化程序。
<?php
namespace app\components;
class Formatter extends \yii\i18n\Formatter
{
public function asRoundedCurrency($value, $currency)
{
return $this->asInteger(round($value)) . ' ' . $currency;
}
}
使用它而不是默认格式化程序,然后像这样调用它:
[
'attribute' => 'Score',
'format' => ['roundedCurrency', 'EUR'],
]
这也允许您自由设置货币符号。