PHP将人民币中金额数字转化为中文大写代码

2015-07-04 0 675

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);

遇见资源网 PHP PHP将人民币中金额数字转化为中文大写代码 http://www.ox520.com/22144.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务