/*

额,重新修改了下。现在估计没什么问题了。。。。

*/

直接上实例

写到 千亿上了。

  1. /**
  2.  
  3. * @author ja颂
  4. * 把数字1-1亿换成汉字表述,如:123->一百二十三
  5. * @param [num] $num [数字]
  6. * @return [string] [string]
  7. */
  8.  
  9. function numToWord($num)
  10. {
  11. $chiNum = array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九');
  12. $chiUni = array('','十', '百', '千', '万','十', '百', '千', '亿', '十', '百','千','万','十', '百', '千');
  13. $uniPro = array(4, 8);
  14. $chiStr = '';
  15.  
  16. $num_str = (string)$num;
  17.  
  18. $count = strlen($num_str);
  19. $last_flag = true; //上一个 是否为0
  20. $zero_flag = true; //是否第一个
  21. $temp_num = null; //临时数字
  22. $uni_index = 0;
  23.  
  24. $chiStr = '';//拼接结果
  25. if ($count == 2) {//两位数
  26. $temp_num = $num_str[0];
  27. $chiStr = $temp_num == 1 ? $chiUni[1] : $chiNum[$temp_num].$chiUni[1];
  28. $temp_num = $num_str[1];
  29. $chiStr .= $temp_num == 0 ? '' : $chiNum[$temp_num];
  30. }else if($count > 2){
  31. $index = 0;
  32. for ($i=$count-1; $i >= 0 ; $i--) {
  33. $temp_num = $num_str[$i];
  34. if ($temp_num == 0) {
  35. $uni_index = $index%15;
  36. if ( in_array($uni_index, $uniPro)) {
  37. $chiStr = $chiUni[$uni_index]. $chiStr;
  38. $last_flag = true;
  39. }else if (!$zero_flag && !$last_flag ) {
  40. $chiStr = $chiNum[$temp_num]. $chiStr;
  41. $last_flag = true;
  42. }
  43. }else{
  44. $chiStr = $chiNum[$temp_num].$chiUni[$index%16] .$chiStr;
  45.  
  46. $zero_flag = false;
  47. $last_flag = false;
  48. }
  49. $index ++;
  50. }
  51. }else{
  52. $chiStr = $chiNum[$num_str[0]];
  53. }
  54. return $chiStr;
  55. }
  56.  
  57. $num = 101001545;
  58. echo numToWord($num);

//结果 一亿零一百万一千五百四十五

php 把数字1-1亿换成汉字表述,例如 150 转成 一百五十的更多相关文章

  1. C# 数字转换成汉字大写 数值转换成汉字大写

    1.数字转换成汉字大写 public string NumToChinese(string x) { //数字转换为中文后的数组 //转载请注明来自 http://www.shang11.com st ...

  2. 转一个财务方面常用到的数字金额转成汉字大写金额 php类

    系统里有牵扯到财务.合同等方面的处理时,常常需要把数字金额转成汉字大写金额(貌似这样正规),转一个转换的php class吧!<?php// 诸海加(ALPHA .z)// 2000-7-19 ...

  3. 给定一个字符串,把字符串内的字母转换成该字母的下一个字母,a换成b,z换成a,Z换成A,如aBf转换成bCg, 字符串内的其他字符不改变,给定函数,编写函数 void Stringchang(const char*input,char*output)其中input是输入字符串,output是输出字符串

    import java.util.Scanner; /*** * 1. 给定一个字符串,把字符串内的字母转换成该字母的下一个字母,a换成b,z换成a,Z换成A,如aBf转换成bCg, 字符串内的其他字 ...

  4. int类型的整数转换成汉字

    int类型的整数转换成汉字 一.源代码:IntegerNumberToChinese.java package cn.com.zfc.example; import java.util.Scanner ...

  5. js将阿拉伯数字转换成汉字大写

    适用场景:票据,结算凭证等.将任意数字的金额,转换成汉字大写的形式.例如:1234.50 -> 壹仟贰佰叁拾肆圆伍角.壹.贰.叁.肆 直接贴代码,如下: //阿拉伯数字转换成大写汉字 funct ...

  6. 将数据库中的内容展示出来并将某些value值转换成汉字

    1.将数据库中的内容展示出来 前台代码未做改变,刚开始未显示的原因是因为 data-field 跟数据库不一样data-field 需要跟数据库中的一样才可以 2.将某些value值转换成汉字 在li ...

  7. 通过pinyin4j.jar将(汉字拼音混合字符串)转化成字母首字母

    通过pinyin4j.jar将(汉字拼音混合字符串)转化成字母首字母 例如 我的中国心    ==> wdzgx 我的中国心ya ==> wdzgxya woai我的中国 ==> w ...

  8. 根据Unicode编码用C#语言把它转换成汉字的代码

    rt 根据所具有的Unicode编码用C#语言把它转换成汉字的代码 var s = System.Web.HttpUtility.HtmlDecode(Utf8Str); var o = Newton ...

  9. 使用sed,awk将love转换成LOVE,将CHINA转换成china

    将love转换成LOVE,将CHINA转换成china echo "love CHINA" | sed -e 's/love/LOVE/' -e 's/CHINA/china/' ...

随机推荐

  1. store前台数据过滤

    最近由于客户需要对grid进行大量的检索操作,而现有的grid数据是以分页的形式从数据库端获取,每次检索都需要重新进行获取,效率很低. 因而将数据进行一次加载,每次的检索操作在前台extjs进行过滤, ...

  2. nginx(一)

    crul新浪微博的时候发现对面用的是nginx服务器,在虎扑足球(挺好的足球论坛)讨论世界杯也发现他们也用这nginx,联想到阿里的tengine也是基于nginx的,觉得有了解一下nginx的必要了 ...

  3. JPA使用入门

    JPA能干什么?我在前面一遍文章<初步了解JPA>基本描述了.不过你不需要点击回去再看.这里简单的再提一下JPA的功能,就是:(1)实现“对象-关系”映射:(2)对象持久化到数据库:(3) ...

  4. 滑动的scrollowview的导航渐变

    CGFloat offsetY = scrollView.contentOffset.y; CGFloat alpha = 0; if (offsetY >= 64) { alpha=((off ...

  5. ionic 使用

    1. 编译时目录下不能有中文文件的名称,否则会报一个资源错误 ,返回aapt.exe'' finished with non-zero exit value 1. 2. 编译完成后在手机上无法访问网络 ...

  6. Spring学习笔记(3)——Bean的注入方式

    依赖注入 依赖注入支持属性注入.构造函数注入.工厂注入. 属性注入: 属性注入即通过setXxx()方法注入Bean的属性值或依赖对象 属性注入要求Bean提供一个默认的构造函数(无参构造函数),并为 ...

  7. FFMpeg的码率控制

    mediaxyz是一位研究ffmpeg有三年的高人了,这几天一直在折腾ffmpeg中的x264,就是不知道该如何控制码率,主要是参数太多,也不知道该如何设置,在google上search了一下,这方面 ...

  8. Qt5.5中,使MainWindow初始为全屏

    MainWindow w; w.showMaximized(); 实例化后,初始显示设置为最大格式即可!

  9. pointer to function

    指针.函数.数字.结构体.指针函数.函数指针 初学不好区分,做点儿实验来有效区分一下,以下代码采用dev-C++平台测试 //pointer to fucntion 函数功能是 基地址加偏移量得到偏移 ...

  10. http://zh.lucida.me/

    一个很厉害的在美国Google的学长的博客