• 技术文章 >后端开发 >PHP问题

    php中怎么实现大写数字转阿拉伯数字

    VV2021-09-17 14:01:36原创91

    php中实现大写数字转阿拉伯数字的方法:【function chinese2number($chNum) { $numArr = array('零' => '0','一' => '1','二' => '2','三' => ...】。

    本文操作环境:windows10系统、php 7、thinkpad t480电脑。

    由于工作需要我们可能会需要将大写的数字转换成相应的阿拉伯数字,可能很多小伙伴并没有研究过这个问题,所以一时间不知道该如何去写。下面我们就来看看如何实现将大写数字转换成相应的阿拉伯数字。

    代码实现:

    function chinese2number($chNum) {
        $numArr = array(
            '零' => '0',
            '一' => '1',
            '二' => '2',
            '三' => '3',
            '四' => '4',
            '五' => '5',
            '六' => '6',
            '七' => '7',
            '八' => '8',
            '九' => '9',
        );
        $numUnit = array(
            '十' =>'10',
            '百' =>'100',
            '千' =>'1000',
            '万' =>'10000',
            '亿' =>'100000000',
        );
        $number = 0;
        for ($i = 0;$i<=mb_strlen($chNum); $i++) {
            $str = mb_substr($chNum,$i,2);
            $first = mb_substr($str,0,1);
            $second = mb_substr($str,1,1);
            if (isset($numUnit[$first])){
                if (!$number) {
                    $number = 1;
                }
                $number *= $numUnit[$first];
            } else if (isset($numArr[$first])) {
                $i++;
                if (isset($numArr[$second])) {
                    if ($numArr[$first] == 0) {
                        $i--;
                    }else{
                        $number += intval($numArr[$first].$numArr[$second]);
                    }
                } else if(isset($numUnit[$second])) {
                    $number += intval($numArr[$first]*$numUnit[$second]);
                } else{
                    $number += intval($numArr[$first]);
                }
            }
    
        }
        return $number;
    }

    推荐学习:php培训

    以上就是php中怎么实现大写数字转阿拉伯数字的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php 大写 阿拉伯数字
    上一篇:php中怎么实现datetime转date 下一篇:php怎么实现浏览器地址栏字符串转化数组
    大前端线上培训班

    相关文章推荐

    • php阿拉伯数字转中文人民币大写• 阿拉伯数字转中文• PHP将英文数字转换为阿拉伯数字• php 阿拉伯数字如何转大写

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网