最近因需要,写了个“阿拉伯数字转中文数字的函数”。搜索了精华区只见到一个类似的。
感觉到我的算法不错,所以贴出来共享一下如果要用于金额的转换,对小数部分的处理要做一下修改
<?php
function ch_num($num,$mode=true) {
  $char = array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");
  $dw = array("","拾","佰","仟","","萬","億","兆");
  $dec = "點";
  $retval = "";
  if($mode)
    preg_match_all("/^0*(\d*)\.?(\d*)/",$num, $ar);
  else
    preg_match_all("/(\d*)\.?(\d*)/",$num, $ar);
  if($ar[2][0] != "")
    $retval = $dec . ch_num($ar[2][0],false); //如果有小数,先递归处理小数
  if($ar[1][0] != "") {
    $str = strrev($ar[1][0]);
    for($i=0;$i<strlen($str);$i++) {
      $out[$i] = $char[$str[$i]];
      if($mode) {
        $out[$i] .= $str[$i] != "0"? $dw[$i%4] : "";
        if($str[$i]+$str[$i-1] == 0)
          $out[$i] = "";
        if($i%4 == 0)
          $out[$i] .= $dw[4+floor($i/4)];
      }
    }
    $retval = join("",array_reverse($out)) . $retval;
  }
  return $retval;
}
//echo ch_num("12345006789001.123");
//echo ch_num("880079.1234");
echo ch_num("300045.0123");
?>
 

详细说明:http://php.662p.com/thread-364-1-1.html

转载于:https://www.cnblogs.com/luenmicro/p/3850247.html

一个阿拉伯数字转中文数字的函数相关推荐

  1. php 数字转中文函数 1转一,一个阿拉伯数字转中文数字的函数-PHP教程,PHP函数

    最近因需要,写了个"阿拉伯数字转中文数字的函数".搜索了精华区只见到一个类似的. 感觉到我的算法不错,所以贴出来共享一下 如果要用于金额的转换,对小数部分的处理要做一下修改 fun ...

  2. 大写汉字转阿拉伯数字c语言,阿拉伯数字转中文数字方法详解(C++实现)

    阿拉伯数字与中文数字没有一一对应关系,不存在直接转换的公式化算法,因此需要根据两种数字体系的特点精心构造转换算法. 中文计数有一个特点,就是"零"的使用变化多端.阿拉伯数字中数字的 ...

  3. 制打印如下所示的n行数字金字塔_一日一技:在Python中实现阿拉伯数字加上中文数字...

    在Python 3里面,中文是可以作为变量名的,而运算符又可以重载,基于这两个特性,我们可以实现阿拉伯数字与中文数字的四则运算. 首先我们定义一个类 Num: class Num(object): d ...

  4. python数字转中文_阿拉伯数字转换为中文数字的python实现

    #!/usr/bin/python # -*- coding: utf-8 -*- ''' 脚本功能:阿拉伯数字与中文数字转换 输入参数:阿拉伯数字,不带符号 初次编写日期:2018-07-24 说明 ...

  5. python输出中文加数字_Python实现阿拉伯数字加上中文数字

    在Python 3里面,中文是可以作为变量名的,而运算符又可以重载,基于这两个特性,我们可以实现阿拉伯数字与中文数字的四则运算. 首先我们定义一个类 Num : class Num(object): ...

  6. 阿拉伯数字与中文数字的相互转换

    汉字用零一二三四五六七八九作为基本计数,与阿拉伯数字靠数字偏移位置不一样. 中文数字是 "数字+权位"的方式组成数字,比如百,千,万. 中文数字每个数字后都会跟上一个权位,权位就是 ...

  7. 阿拉伯数字与中文数字转换算法

    根据<算法的乐趣>简单总结一下: 中文数字的特点 中文数字直接"数字+权位"的方式组成数字,比如阿拉伯数字100,中文表示为一百,其中"一"为数字, ...

  8. js阿拉伯数字转中文数字

    //阿拉伯数字转中文数字function noToChinese(num) {if (!/^\d*(\.\d*)?$/.test(num)) {alert("Number is wrong! ...

  9. c语言提取字符串里面的数字,一个截取字符串中数字的函数

    一个截取字符串中数字的函数 我编写了一个代码,是截取字符串中数字的函数,如输入字符串:ah123hs453sh3k后,应将字符串中的字符"123"变为整数123,"453 ...

最新文章

  1. Ubuntu 14.04 64位上安装wps office软件
  2. SpringBoot使用security和jwt进行鉴权设计
  3. RocketMQ Apache顶级项目之路
  4. 报名|第2期“DI极客说”,揭秘决策AI创新应用带来的行业变革
  5. redis cli 删除key 模糊_Redis集群及雪崩
  6. jquery(js) 增加 删除 修改属性样式、元素内容
  7. bzoj1232[Usaco2008Nov]安慰奶牛cheer*
  8. 拟合方程是什么matlab,matlab离散型数据拟合方程,求系数,哪个大神能说说方法...
  9. 学习5g通信心得体会_5G,不仅仅是速度,更可能是改变命运的机会
  10. 我不断收到“ Uncaught SyntaxError:意外令牌o”
  11. OpenCv中 width 和 widthStep的区别
  12. UCF101动作识别数据集
  13. 阿里某程序员感慨:30岁阿里p7,很迷茫,40岁转行能做什么
  14. Mac制作Windows 10 U盘启动盘
  15. 自学Java随时放弃(十二 控制跳转语句 ①break+②continue+③return)
  16. 正则表达式常用的校验方法
  17. 如何保存卡住的wps_我告诉你wps卡住了怎么办
  18. 10天学安卓-第一天
  19. 团队公司地点拍照打卡签到活动小程序 document.forms[“myForm“][“fname“]
  20. Day28 49. 丑数

热门文章

  1. [转]2020 年最具潜力 44 个顶级开源项目,涵盖 11 类 AI 学习框架、平台(值得收藏)
  2. java http 双向认证_HttpsURLConnection使用,并实现双向认证
  3. 绕过漏洞危害_Dipper Wallet漏洞赏金计划
  4. html 绝对位置居中,如何在div中对绝对定位元素进行居中?
  5. 计算机算法设计与分析 旅行售货员问题
  6. AcWing285. 没有上司的舞会(树形DP)题解
  7. pip安装包时报错:The repository located at pypi.doubanio.com is not a trusted or secure host
  8. C源程序括号匹配检查(C语言)
  9. 自动驾驶—— Image Caption的学习笔记(legacy)
  10. ubuntu 20.04 源码编译 cmake