CakePHP 3.6数字货币
我设定 及 取决于语言开关 我发现:CakePHP 3.6数字货币,cakephp,Cakephp,我设定 及 取决于语言开关 我发现: I18n::setLocale('de_DE'); 德语节目 690000欧元 用英语说,就像 6900000.00欧元 为什么不尊重精度? 有什么我能做的吗?首先,我不认为en\u en是一个有效的/受支持的区域设置,您宁愿使用en\u US、en\u GB、en\u CA等。使用无效/不受支持的区域设置可能会使格式化程序出错 尽管如此,这看起来仍然是一个可能的bug。CakePHP在内部使用intlNumberFormatter,如果您想要格式化一
I18n::setLocale('de_DE');
德语节目
690000欧元
用英语说,就像
6900000.00欧元
为什么不尊重精度?
有什么我能做的吗?首先,我不认为
en\u en
是一个有效的/受支持的区域设置,您宁愿使用en\u US
、en\u GB
、en\u CA
等。使用无效/不受支持的区域设置可能会使格式化程序出错
尽管如此,这看起来仍然是一个可能的bug。CakePHP在内部使用intlNumberFormatter
,如果您想要格式化一种不是给定区域设置默认货币的货币(例如EUR
对于en_US
区域设置),则在应用精度之前,必须将该货币作为格式化程序上的一个属性应用,但是,CakePHP只将货币传递给NumberFormatter::formatCurrency()
方法
您可能希望将此作为问题报告
另请参见
I18n::setLocale('de_DE');
<?=$this->Number->currency($price, 'EUR', ['precision' => 0])?>