人民币数字怎么转换成大写(将金额变成人民币大写的公式)
导语:将人民币中金额数字转化为中文大写代码——php
主体代码:
function toChineseNumber($money){
$money = round($money,2);
$cnynums = array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");
$cnyunits = array("圆","角","分");
$cnygrees = array("拾","佰","仟","万","拾","佰","仟","亿");
list($int,$dec) = explode(".",$money,2);
$dec = array_filter(array($dec[1],$dec[0]));
$ret = array_merge($dec,array(implode("",$this->cnyMapUnit(str_split($int),$cnygrees)),""));
$ret = implode("",array_reverse($this->cnyMapUnit($ret,$cnyunits)));
return str_replace(array_keys($cnynums),$cnynums,$ret);
}
function cnyMapUnit($list,$units) {
$ul=count($units);
$xs=array();
foreach (array_reverse($list) as $x) {
$l=count($xs);
if ($x!="0" || !($l%4))
$n=($x=='0'?'':$x).($units[($l-1)%$ul]);
else $n=is_numeric($xs[0][0])?$x:'';
array_unshift($xs,$n);
}
return $xs;
}
调用代码:echo toChineseNumber($money);
本文内容由小滢整理编辑!