繁体   English   中英

NumberFormatter生成牢不可破的空间

[英]NumberFormatter generate unbreakable space

我尝试将来自php的格式化货币输入作为输入值,

$format = numfmt_create( 'fr_FR', NumberFormatter::CURRENCY);
$datavalue = numfmt_format_currency($format, $data['value'], 'EUR');

它有效,但结果包含像这样的坚不可摧的太空角色

value='10,0 €'

这导致我的设计混乱,我还没有找到如何删除它的方法

已经尝试过:

str_replace(' ', " ", $datavalue);

通过html_entity_decode()运行结果,然后执行str_replace(' ', '', $datavalue);

该类/函数希望将整数传递给它,因此在使用该函数之前,您需要清理数据。

您可以使用numberFormatter

例:

$amount = '12345.67';
$formatter = new NumberFormatter('fr_FR',  NumberFormatter::CURRENCY);
echo 'format: ', $formatter->formatCurrency($amount, 'EUR'), PHP_EOL;
   //output 
     12 345,67 € 

编辑:其他方法是使用此MoneyFormat示例

$number = 1234.56;

// let's print the international format for the en_US locale
setlocale(LC_MONETARY, 'en_US');
echo money_format('%i', $number) . "\n";
// USD 1,234.56

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM