Por ejemplo $num='7,57,800';
Formato de dinero PHP en moneda india?
¿Cómo puedo mostrar el valor de $number
como 7,57 lakhs?
Por ejemplo $num='7,57,800';
Formato de dinero PHP en moneda india?
¿Cómo puedo mostrar el valor de $number
como 7,57 lakhs?
Aquí está la función:
function formatInIndianStyle($num){
$pos = strpos((string)$num, ".");
if ($pos === false) {
$decimalpart="00";
}
if (!($pos === false)) {
$decimalpart= substr($num, $pos+1, 2); $num = substr($num,0,$pos);
}
if(strlen($num)>3 & strlen($num) <= 12){
$last3digits = substr($num, -3);
$numexceptlastdigits = substr($num, 0, -3);
$formatted = makeComma($numexceptlastdigits);
$stringtoreturn = $formatted.",".$last3digits.".".$decimalpart ;
}elseif(strlen($num)<=3){
$stringtoreturn = $num.".".$decimalpart ;
}elseif(strlen($num)>12){
$stringtoreturn = number_format($num, 2);
}
if(substr($stringtoreturn,0,2)=="-,"){
$stringtoreturn = "-".substr($stringtoreturn,2);
}
return $stringtoreturn;
}
function makeComma($input){
if(strlen($input)<=2)
{ return $input; }
$length=substr($input,0,strlen($input)-2);
$formatted_input = makeComma($length).",".substr($input,-2);
return $formatted_input;
}
Marque esta plugin- http://archive.plugins.jquery.com/project/numberformatter
He aquí un ejemplo de cómo se tendría que utilizar este plugin.
$("#salary").blur(function(){
$(this).parseNumber({format:"#,###.00", locale:"us"});
$(this).formatNumber({format:"#,###.00", locale:"us"});
});
Sólo cambia la configuración regional ..
Para más información visita-ejemplo y http://code.google.com/p/jquery-numberformatter/
Mi fuente ejemplo: http://code.google.com/p/jquery-numberformatter/
Espero que esto ayude :)
Aquí es otra solución solo como referencia:
<?php
# Output easy-to-read numbers
# by james at bandit.co.nz
function bd_nice_number($n) {
// first strip any formatting;
$n = (0+str_replace(",","",$n));
// is this a number?
if(!is_numeric($n)) return false;
// now filter it;
if($n>1000000000000) return round(($n/1000000000000),1).' trillion';
else if($n>1000000000) return round(($n/1000000000),1).' billion';
else if($n>1000000) return round(($n/1000000),1).' million';
else if($n>1000) return round(($n/1000),1).' thousand';
return number_format($n);
}
?>
<?php //Credits are going to: @Niet-the-Dark-Absol
function indian_number_format($num){
$num=explode('.',$num);
$dec=(count($num)==2)?'.'.$num[1]:'.00';
$num = (string)$num[0];
if(strlen($num) < 4) return $num;
$tail = substr($num,-3);
$head = substr($num,0,-3);
$head = preg_replace("/\B(?=(?:\d{2})+(?!\d))/",",",$head);
return $head.",".$tail.$dec;
}
?>
Pregunta: stackoverflow.com/questions/10042485
cadena money_format (string $ formato, número flotante $) del manual de php? – PurplePilot
Para aclaración: ¿está tratando de convertir '7,57,800' a' 7,55 Lakhs'? O tratando de convertir '757800' a' 7,57,800'? –