问题
I am wondering if there is a way to separate thousands with space character.
For example:
$number = 21234.56;
setlocale(LC_ALL, 'pl_PL.utf8');
echo money_format('%i', $number);
is giving me:
21.234,56 PLN
And I want:
21 234,56 PLN
I don't want to make str_replace. I am sure there is a better way.
回答1:
You can use number-format. For example :
echo number_format($number, 2, ',', ' ');
But you will have to put the unit yourself.
Otherwise, this comment of the money_format
documentation page gives a version of the function with some code that you can modify to change the thousand separator.
You can also do something like this :
$locale = localeconv();
$text = money_format('%i', $number);
$text = str_replace($locale['mon_thousands_sep'], ' ', $text);
回答2:
see: http://php.net/manual/en/function.number-format.php
string number_format ( float $number , int $decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )
For your case:
number_format($number, 2, ',', ' ');
来源:https://stackoverflow.com/questions/5322790/php-money-format-with-spaces