当前位置:网站首页 > 创业 > 正文

php把数字钱数转为中文钱数

0 张子豪 张子豪 2025-10-11 12:55 1

在做法式的时辰,我们会碰到要把数字的钱数转为中文的年夜写钱数

东西/原料

  • php
  • sublime

方式/步调

  1. 1

    function cny($money) {

        $cnums=array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");

        $cnyunits=array("圆","角","分");

        $grees=array("拾","佰","仟","万","拾","佰","仟","亿");

        if(strpos($money,'.') !== false){ //拆分整数小数 别离赋值给变量

             list($int,$dec)=explode(".",$money,2);

        }else{

            list($int,$dec)=[$money,0];

        }

        $dec=array_filter(array($dec[1],$dec[0])); //过滤分数

        $ret=array_merge($dec,array(implode("",cny_to_unit(str_split($int),$grees)),"")); //先处置单元

        $ret=implode("",array_reverse(cny_to_unit($ret,$cnyunits)));

        return str_replace(array_keys($cnums),$cnums,$ret);

    }

  2. 2

    function cny_to_unit($list,$units) {

        $ul=count($units);

        $xs=array();

        foreach (array_reverse($list) as $x) { /反转数组便于处置

            $l=count($xs);

            if ($x!="0" || !($l%4)) {

                if ($l != 0) {

                    $n=($x=='0'?'':$x).($units[($l-1)%$ul]);

                }else{

                    $n=($x=='0'?'':$x);

                }

            }

            else {

                $n=is_numeric($xs[0][0])?$x:'';

            }

            array_unshift($xs,$n);

        }

        return $xs;

    }

  3. 3

    挪用函数

    echo cny('120');

  4. 4

    挪用函数

    echo cny('120.18');

  5. 5

    小编在网站上找到良多的栗子,感觉这个是代码起码的,可是我在用的过程中,会报数组溢出等错误,所以此刻是小编革新过的代码。大师可以矫捷运用

注重事项

  • 数组溢出

来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!


本文链接:https://www.ibaiwen.com/web/223741.html

张子豪

张子豪

TA很懒,啥都没写...

@百闻娱乐 本站部分内容转自互联网,若有侵权等问题请及时与本站联系,我们将在第一时间删除处理。 | 粤ICP备2024343649号 | (地图