PHP人民币金额转大写实例代码


Posted in PHP onOctober 02, 2015

PHP人民币金额转大写,其实质就是数字转换成中文大写,测试了一下,非常有趣,随便输个数字,就可以将其大写打印出来,初学的朋友们试一下吧

//PHP人民币金额转大写
class Ext_Num2Cny{ 
 static $basical = array(0=>"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"); 
 static $advanced=array(1=>"拾","佰","仟"); 
 
 public static function ParseNumber($number){ 
  $number=trim($number); 
  if ($number>999999999999) return "数字太大,无法处理。抱歉!"; 
  if ($number==0) return "零"; 
  if(strpos($number,'.')){ 
   $number=round($number,2); 
   $data=explode(".",$number); 
   $data[0]=self::int($data[0]); 
   $data[1]=self::dec($data[1]); 
   return $data[0].$data[1]; 
  }else{ 
   return self::int($number).'整'; 
  } 
 } 
 
 public static function int($number){ 
  $arr=array_reverse(str_split($number)); 
  $data=''; 
  $zero=false; 
  $zero_num=0; 
  foreach ($arr as $k=>$v){ 
   $_chinese=''; 
   $zero=($v==0)?true:false; 
   $x=$k%4; 
   if($x && $zero && $zero_num>1)continue; 
   switch ($x){ 
    case 0: 
     if($zero){ 
      $zero_num=0; 
     }else{ 
      $_chinese=self::$basical[$v]; 
      $zero_num=1; 
     } 
     if($k==8){ 
      $_chinese.='亿'; 
     }elseif($k==4){ 
      $_chinese.='万'; 
     } 
     break;  
    default: 
     if($zero){ 
      if($zero_num==1){ 
       $_chinese=self::$basical[$v]; 
       $zero_num++; 
      } 
     }else{ 
      $_chinese=self::$basical[$v]; 
      $_chinese.=self::$advanced[$x]; 
     } 
   } 
   $data=$_chinese.$data; 
  } 
  return $data.'元'; 
 } 
  
 public static function dec($number){ 
  if(strlen($number)<2) $number.='0'; 
  $arr=array_reverse(str_split($number)); 
  $data=''; 
  $zero_num=false; 
  foreach ($arr as $k=>$v){ 
   $zero=($v==0)?true:false; 
   $_chinese=''; 
   if($k==0){ 
    if(!$zero){ 
     $_chinese=self::$basical[$v]; 
     $_chinese.='分'; 
     $zero_num=true; 
    } 
   }else{ 
    if($zero){ 
     if($zero_num){ 
      $_chinese=self::$basical[$v]; 
     } 
    }else{ 
     $_chinese=self::$basical[$v]; 
     $_chinese.='角'; 
    } 
   } 
   $data=$_chinese.$data; 
  } 
  return $data; 
 } 
} 
//使用方法
$nun = new Ext_Num2Cny(); 
echo Ext_Num2Cny::ParseNumber(1234567.5);

结果:壹佰贰拾叁万肆仟伍佰陆拾柒元伍角

希望本文对大家学习php编程有所帮助,

PHP 相关文章推荐
PHP 已经成熟
Dec 04 PHP
PHP第一季视频教程(李炎恢+php100 不断更新)
May 29 PHP
php站内搜索并高亮显示关键字的实现代码
Dec 29 PHP
关于使用key/value数据库redis和TTSERVER的心得体会
Jun 28 PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 PHP
PHP中file_get_contents高?用法实例
Sep 24 PHP
php对象在内存中的存在形式分析
Feb 03 PHP
PHPStrom中实用的功能和快捷键大全
Sep 23 PHP
WordPress开发中短代码的实现及相关函数使用技巧
Jan 05 PHP
php操纵mysqli数据库的实现方法
Sep 18 PHP
PHP下 Mongodb 连接远程数据库的实例代码
Aug 30 PHP
Ubuntu彻底删除PHP7.0的方法
Jul 27 PHP
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
Oct 01 #PHP
php中preg_match的isU代表什么意思
Oct 01 #PHP
php 利用array_slice函数获取随机数组或前几条数据
Sep 30 #PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
Sep 30 #PHP
PHP表单提交后引号前自动加反斜杠的原因及三种办法关闭php魔术引号
Sep 30 #PHP
Session 失效的原因汇总及解决丢失办法
Sep 30 #PHP
解决php表单重复提交实现方法
Sep 29 #PHP
You might like
php radio 单选框获取与保持值的实现代码
2010/05/15 PHP
php对大文件进行读取操作的实现代码
2013/01/23 PHP
php+ajax导入大数据时产生的问题处理
2014/06/11 PHP
php使用curl实现ftp文件下载功能
2017/05/16 PHP
php检测mysql表是否存在的方法小结
2017/07/20 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
jQuery 隔行换色 支持键盘上下键,按Enter选定值
2009/08/02 Javascript
jQuery之$(document).ready()使用介绍
2012/04/05 Javascript
浅谈Javascript 执行顺序
2013/12/18 Javascript
JavaScript通过prototype给对象定义属性用法实例
2015/03/23 Javascript
JS动画效果打开、关闭层的实现方法
2015/05/09 Javascript
AngularJs学习第八篇 过滤器filter创建
2016/06/08 Javascript
JavaScript贪吃蛇小组件实例代码
2017/08/20 Javascript
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
AngularJS发送异步Get/Post请求方法
2018/08/13 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
详解vue实现坐标拾取器功能示例
2020/11/18 Vue.js
[02:49]2018DOTA2亚洲邀请赛主赛事决赛日战况回顾 Mineski鏖战5局夺得辉耀
2018/04/10 DOTA
Python可跨平台实现获取按键的方法
2015/03/05 Python
Python中list列表的一些进阶使用方法介绍
2015/08/15 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
Python动态语言与鸭子类型详解
2019/07/01 Python
使用Python快乐学数学Github万星神器Manim简介
2019/08/07 Python
对Django 中request.get和request.post的区别详解
2019/08/12 Python
通过实例解析Python return运行原理
2020/03/04 Python
python实现IOU计算案例
2020/04/12 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
会计与审计专业大专生求职信
2013/10/03 职场文书
怎样填写就业意向
2014/04/02 职场文书
文明倡议书范文
2014/04/15 职场文书
小学生关于梦想的演讲稿
2014/08/22 职场文书
王亚平太空授课观后感
2015/06/12 职场文书
高中班主任工作总结(范文)
2019/08/20 职场文书
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers
世界十大儿童漫画书排名,法国国宝漫画排第五,第二是轰动日本连环
2022/03/18 欧美动漫
CSS使用SVG实现动态分布的圆环发散路径动画
2022/12/24 HTML / CSS