是否有任何 PHP 函数可以将数字转换为具有千位分隔符的货币?
Posted
技术标签:
【中文标题】是否有任何 PHP 函数可以将数字转换为具有千位分隔符的货币?【英文标题】:Is there any PHP function to convert number to currency with thousands separators? 【发布时间】:2015-01-27 17:50:21 【问题描述】:是否有任何 php 函数可以将 integer
转换为 Lakh 和 Crore?
900800 -> 9,00,800
500800 -> 5,00,800
【问题讨论】:
number_format():
php.net/manual/en/function.number-format.php
@Rizier123 OP 请求印度数字格式,number_format
不这样做。
@ColinvH 我怎么知道那是Indian number format
? (但很高兴知道)
@Rizier123 在 1,000 之后,它们按 100 分组(例如,9,00,800 和 3,21,00,500)。
【参考方案1】:
由于您在问题标签中添加了Yii
,您可以通过Yii
的方式执行此操作,如下所示:
Yii::app()->language='en_IN';
// Output: Lakh 9,00,800
echo Yii::app()->numberFormatter->formatCurrency('900800', 'Lakh');
// Output: ₹ 5,00,800
echo Yii::app()->numberFormatter->formatCurrency('500800', 'INR');
【讨论】:
它的输出 5,00,800.00,如何从这个字符串中删除 .00【参考方案2】:对于大多数语言环境,使用 number_format
: http://php.net/manual/en/function.number-format.php
对于印度 (Lakh & Crore),请使用此评论中提供的 formatInIndianStyle
:http://php.net/manual/en/function.number-format.php#40558
【讨论】:
以上是关于是否有任何 PHP 函数可以将数字转换为具有千位分隔符的货币?的主要内容,如果未能解决你的问题,请参考以下文章