博主信息
耶和华信徒的博客
博文
22
粉丝
0
评论
1
访问量
14816
积分:0
P豆:93

数字金额转大写文字

2021年04月26日 15:31:31阅读数:130博客 / 耶和华信徒的博客/ PHP

php数字金额转大写文字函数,输入需要转换的金额,返回对应的文字

  1. function num2upper($money, $type = false)
  2. {
  3. $result = '';
  4. $money = strrev( (string)($money*100) );
  5. $number = $type ? ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']
  6. : ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
  7. $unit = $type ? ['分','角','元']
  8. : ['分','角','圆'];
  9. $unit2 = $type ? ['千', '万', '十', '百'] : ['仟', '万', '拾', '佰'];
  10. //$unit2 = $type ? ['千', '万', '十', '百'] : ['拾', '佰' ,'仟', '万', ];
  11. $money = (string)$money;
  12. /** - - - - - - - 简单错误处理 - - - - - - **/
  13. if ($money > 99999999999) return '金额过大,无法显示'; //最大值错误提醒;
  14. if ($money == 0) return '零元整'; //0元简单处理;
  15. if ($money < 0) return '金额错误,请联系管理员'; //最大值错误提醒;
  16. $lenght = strlen($money);
  17. for ($i = 0; $i < $lenght; $i++) {
  18. $tmp = '';
  19. // if ( $i != 0 && ($i < $lenght-1)最大位不可能为0 && $money[$i] == 0 && $money[$i+1] == 0) continue ;//跳过多个零
  20. $tmp .= $number[ $money[$i] ]; //数字替换成文字
  21. if ($i < 3) { //小额处理(元角分)
  22. $tmp .= $unit[ $i ];
  23. }else {
  24. //分位不验证 当前数为零 下一位还是0
  25. if ( $i != 0 && $money[$i] == 0 && $money[$i+1] == 0) {
  26. continue ;//跳过多个零
  27. }
  28. if ( $money[$i] != 0 && $i != 10) $tmp .= $unit2[($i-1)%4]; //特殊处理亿元
  29. else if ( $i == 6 ) $tmp .= '万';
  30. else if ( $i == 10 ) $tmp .= '亿';
  31. }
  32. $result = $tmp . $result; //向前将金额文字排列
  33. }
  34. $result = str_replace('零角零分', '整', $result); //添加整字
  35. $result = str_replace('零零圆', '圆', $result); //添加圆字
  36. $result = str_replace('零圆', '圆', $result); //添加圆字
  37. $result = str_replace('零零', '零', $result); //添加整字
  38. $result = str_replace('零万', '万零', $result); //添加整字
  39. $result = str_replace('零分', '', $result); //去掉零分
  40. return $result;
  41. }

版权申明:本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!

全部评论

文明上网理性发言,请遵守新闻评论服务协议

条评论
  • php的方法:首先判断输出的是否为符串;然后预定义中换的组以及单位换的组;接着将符串拆分成组;最后将整部分替换成即可。
    php小的实现方法:首先创建一个PHP示例件;然后通过“private function getChineseNumber($num, $mode = true){...}”方法将小即可
    php把母的方法:首先新建php件,并生成一个0到25的随机整及赋值;然后将随机的整加上65得到一个值,并通过chr函返回在ASCII值对应的母;最后将取得的母输出即可。
    jQuery换函:1、【toLowerCase()】方法用于把符串换为小;2、【toUpperCase()】方法用于把符串换为
    php换成的实现方法:首先创建一个PHP示例件;然后定义一个“get_amount”方法;接着通过if等语句实现换逻辑;最后执行该件即可。
    在PHP中将的函是“strtoupper()”,该函的作用是将符串化为,语法为“strtoupper(string $string)”,返回值为换后的符串。
    php中符串可以用strtoupper()和strtolower()函。strtoupper()函可以把符串换为,并返回换后的符串。
    php阿拉伯的方法:首先创建一个PHP示例件;然后定义一个“getChineseNumber”方法;接着通过“preg_match_all”函匹配;最后通过getChineseNumber
    php换的方法:1、判断“$num”是否存在;2、将浮点换为整;3、将空的变量用来保存符串;4、分割,区分圆角分;5、循环计算亿万元等;6、输出换结果即可。
    php的实现方法:首先创建一个PHP示例件;然后创建一个cny方法;接着通过定义好的“function _cny_map_unit($list, $units){...}”方法进行换即可。
    实现方法:首先打开excel表格,选中需要换成的单元格;然后点击右键,在弹出的右键菜单中选择“设置单元格格式“;接着在弹出的新窗口里选择“”-“特殊”;最后在“类型”下拉列表里选择“中
    php实现的方法:首先定义需要的中符;然后定义判断条件并循环取出,并依次换为中符;接着定义判断条件,将换的中符计算长度作为判断循环;最后处理不必要符,并返回完整中符即可
    php的实现方法:首先创建一个PHP示例件;然后定义一个“num_to_rmb”方法;接着通过round等函化为整;最后将处理的汉加上“整”即可。
    wps自动生成的方法:首先打开一个新建的wps表格;然后在表格B2的单元格上输入;接着点击输入的单元格B2,并用鼠标单点一个右键;最后在【单元格格式】中的【】分类中选择【特殊】,
    php换的方法:使用换函grees,代码为【$grees=array("拾","佰","仟","万",
    php符串的方法:可以使用strtolower()函和strtoupper()函实现符串换。strtolower()函符串换为小,返回换为小符串。
    php母的方法:使用内置函strtoupper();该函可以把符串换为,然后返回换为符串,语法“strtoupper(string)”。
    php将英的方法:可以利用php内置函strtoupper()函来实现。
    php将小换为母的方法:可以利用strtoupper()函来实现。
    在mysql中,可以使用换函UPPER()来将符串中的符全部换为;“UPPER(str)”函可以返回符串str,根据当前符集映射的所有符更改为