PHP中从欧元货币格式到美元货币格式

Posted

技术标签:

【中文标题】PHP中从欧元货币格式到美元货币格式【英文标题】:From Euro currency format to USD currency format in PHP 【发布时间】:2015-03-21 12:11:32 【问题描述】:

如何将欧元货币格式转换为美元货币格式。我只想格式化数字,这里不包括转换率。提前致谢。

【问题讨论】:

不要在脚本内部使用任何形式的货币格式:在脚本中将值维护为简单的浮点数,并且仅在实际向用户显示它们时对其进行格式化......那么你永远不需要从一个格式化字符串转换为另一个 @MarkBaker 感谢您的回复。实际上,我有很多不同的货币值,主要是欧元、加元和英镑,我的项目要求是将它们全部转换为数据库表中的浮点数。 这些字符串值是否仅包含货币代码?或者使用, 作为小数分隔符而不是.,使用空格作为千​​位分隔符而不是,,等等? yes , 作为小数分隔符,空格作为千​​位分隔符,不涉及货币代码。 棘手,因为 , 的模糊性有时需要删除,有时需要转换为小数点....如果您知道任何值的语言环境/货币,您可以能够使用php的international currency formatterparseCurrency()方法 【参考方案1】:

我自己找到了答案。是NumberFormatter的parse函数

$fmt = new NumberFormatter( 'fr_FR', NumberFormatter::DECIMAL );
$num = "1 234,56";
echo $fmt->parse($num)."\n";

它工作正常。 谢谢。

【讨论】:

【参考方案2】:

NumberFormatter 类可以表示不同种类的数字格式。它有一个parseCurrency() 方法来解析带有货币值的字符串。

有了这个,您应该能够为您必须处理的不同数字格式创建解析器。

【讨论】:

$fmt = new NumberFormatter( "de_DE", NumberFormatter::CURRENCY ); $number = "0,007"; $curr = "USD"; echo "We have ".$fmt->parseCurrency($number, $curr)." in $curr\n"; 回复我We have in USD 知道这如何工作吗?

以上是关于PHP中从欧元货币格式到美元货币格式的主要内容,如果未能解决你的问题,请参考以下文章

Steam 市场货币和 XML 格式

PHP从次要单位格式化多种货币

php里实现汇率转换

PHP JSON 格式货币逗号

从 formatCurrency 中删除货币符号

Laravel 中的货币格式 - 100 到 1.00 美元