带空格的 PHP 货币格式

发布于 2024-10-22 11:01:18 字数 269 浏览 3 评论 0原文

我想知道是否有一种方法可以用空格字符分隔数千。

例如:

$number = 21234.56;
setlocale(LC_ALL, 'pl_PL.utf8');
echo money_format('%i', $number);

给我:

21.234,56 PLN

我想要:

21 234,56 PLN

我不想进行 str_replace。我确信有更好的方法。

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.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梓梦 2024-10-29 11:01:18

您可以使用数字格式 。例如:

echo number_format($number, 2, ',', ' ');

但是您必须自己放置该装置。

否则,money_format< 的注释 /code> 文档页面提供了该函数的一个版本,其中包含一些代码,您可以修改这些代码来更改千位分隔符。

你也可以这样做:

$locale = localeconv();
$text = money_format('%i', $number);
$text = str_replace($locale['mon_thousands_sep'], ' ', $text);

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);
看春风乍起 2024-10-29 11:01:18

请参阅: http://php.net/manual/en/function.number-format .php

字符串 number_format ( float $number , int $decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )

对于你的情况:

number_format($number, 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, ',', ' ');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文