我的产品价格为 5005000 卢比/-(500 万和 5000 卢比)。我想转换成 505 万卢比。是否有任何 PHP 函数可以做到这一点。我尝试搜索 StackOverflow 并仅获得 number_words 转换。在一个名为 99 acres 的网站上,他们是这样做的:http://www.99acres.com/Bangalore-Real-Estate.htm .谁能帮忙
最佳答案
<?php
function count_digit($number) {
return strlen($number);
}
function divider($number_of_digits) {
$tens="1";
if($number_of_digits>8)
return 10000000;
while(($number_of_digits-1)>0)
{
$tens.="0";
$number_of_digits--;
}
return $tens;
}
//function call
$num = "789";
$ext="";//thousand,lac, crore
$number_of_digits = count_digit($num); //this is call :)
if($number_of_digits>3)
{
if($number_of_digits%2!=0)
$divider=divider($number_of_digits-1);
else
$divider=divider($number_of_digits);
}
else
$divider=1;
$fraction=$num/$divider;
$fraction=number_format($fraction,2);
if($number_of_digits==4 ||$number_of_digits==5)
$ext="k";
if($number_of_digits==6 ||$number_of_digits==7)
$ext="Lac";
if($number_of_digits==8 ||$number_of_digits==9)
$ext="Cr";
echo $fraction." ".$ext;
?>
- 数数number_of_digit
- 取(number_of_digit-1)位十进制值
- 把它分开。
- 从位数中找出值的扩展。
- 输出将是
123456789 = 12.34 Cr
23456789 = 2.34 Cr
3456789 = 34.56 Lac
456789 = 4.56 Lac
56789 = 56.78 K
6789 = 6.78 K
如果任何测试用例失败。请告诉我。我会改正
关于php - 如何在 php 中将以千万为单位的金额转换为十进制值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33095546/