PHP人民币小写数字转大写汉字

PHP人民币小写数字转大写汉字

浏览次数:
作者: 墨鱼
信息来源: 本站原创
更新日期: 2024-02-09 06:47:46
文章简介

PHP实现人民币小写数字转大写汉字功能,准确转换,方便财务操作。简洁高效,提升数据可读性。避免人工转换错误,提升工作效率,适用于各类财务和金额处理场景。

  • 正文开始
  • 相关阅读
  • 推荐作品

PHP人民币小写数字转大写汉字

具体代码如下:

<?php
$data = $_GET['data'];
function china_cny($ns) {
 
    static $cnums = array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"),
 
    $cnyunits = array("圆", "角", "分","厘","毫"),
 
    $grees = array("拾", "佰", "仟", "万", "拾", "佰", "仟", "亿");
 
    list($ns1, $ns2) = explode(".", $ns, 4);
    $ns2 = array_filter(array($ns2[3],$ns2[2],$ns2[1], $ns2[0]));
 
    //$ns2 = array_filter(array($ns2[1], $ns2[0]));
 
    $ret = array_merge($ns2, array(implode("", _cny_map_unit(str_split($ns1), $grees)), ""));
 
    $ret = implode("", array_reverse(_cny_map_unit($ret, $cnyunits)));
 
    return str_replace(array_keys($cnums), $cnums, $ret);
 
}
 
function _cny_map_unit($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 $data."元</br>";
echo china_cny($data);
?>


PHP报错getimagesize(): SSL operation failed with code 1问题解决方案
« 上一篇 2022年11月15日
PHP截取某个字符串前面的数字
下一篇 » 2024年03月19日

如本文对您有帮助,就请墨鱼抽根烟吧!