php下实现一个阿拉伯数字转中文数字的函数


Posted in PHP onJuly 10, 2008

如果要用于金额的转换,对小数部分的处理要做一下修改

<?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");

?>

PHP 相关文章推荐
Dedecms常用函数解析
Feb 01 PHP
php设计模式 Visitor 访问者模式
Jun 28 PHP
php 中文字符串首字母的获取函数分享
Nov 04 PHP
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
Aug 18 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 PHP
基于thinkPHP实现的微信自定义分享功能示例
Sep 23 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
Oct 25 PHP
php 二维数组快速排序算法的实现代码
Oct 17 PHP
Laravel5框架自定义错误页面配置操作示例
Apr 17 PHP
php+js实现的无刷新下载文件功能示例
Aug 23 PHP
tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】
May 26 PHP
兼容PHP5的PHP目录管理函数库
Jul 10 #PHP
php 防止单引号,双引号在接受页面转义
Jul 10 #PHP
功能齐全的PHP发送邮件类代码附详细说明
Jul 10 #PHP
使用PHP批量生成随机用户名
Jul 10 #PHP
用PHP与XML联手进行网站编程代码实例
Jul 10 #PHP
PHP写入WRITE编码为UTF8的文件的实现代码
Jul 07 #PHP
PHP远程连接MYSQL数据库非常慢的解决方法
Jul 05 #PHP
You might like
SONY SRF-M100的电路分析
2021/03/02 无线电
用Flash图形化数据(二)
2006/10/09 PHP
利用php绘制饼状图的实现代码
2013/06/07 PHP
用js实现控制内容的向上向下滚动效果
2007/06/26 Javascript
关于js new Date() 出现NaN 的分析
2012/10/23 Javascript
IE下使用cloneNode注意事项分享
2012/11/22 Javascript
JS this作用域以及GET传输值过长的问题解决方法
2013/08/06 Javascript
深入了解Node.js中的一些特性
2014/09/25 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
2015/02/26 Javascript
简介alert()与console.log()的不同
2015/08/26 Javascript
jQuery实现的个性化返回底部与返回顶部特效代码
2015/10/30 Javascript
js实现城市级联菜单的2种方法
2017/06/23 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
vue的无缝滚动组件vue-seamless-scroll实例
2017/12/18 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
Layui组件Table绑定行点击事件和获取行数据的方法
2018/08/19 Javascript
使用Jenkins部署React项目的方法步骤
2019/03/11 Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
2019/09/25 Javascript
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
浅谈Vue使用Elementui修改默认的最快方法
2020/12/05 Vue.js
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
javascript实现简单留言板案例
2021/02/09 Javascript
基于wxpython开发的简单gui计算器实例
2015/05/30 Python
Python+OpenCV目标跟踪实现基本的运动检测
2018/07/10 Python
Python二维数组实现求出3*3矩阵对角线元素的和示例
2019/11/29 Python
html5的canvas元素使用方法介绍(画矩形、画折线、圆形)
2014/04/14 HTML / CSS
瑞典Happy Socks美国官网:购买色彩斑斓的快乐袜子
2016/10/19 全球购物
Nike爱尔兰官方网站:Nike.com (IE)
2018/03/12 全球购物
德国网上超市:myTime.de
2019/08/26 全球购物
PHP开发工程师面试问题集锦
2012/11/01 面试题
土木工程专业自荐信
2013/10/04 职场文书
2015年元旦活动总结
2014/05/09 职场文书
学习优秀党务工作者先进事迹材料思想报告
2014/09/17 职场文书
学者《孟子》名人名言
2019/08/09 职场文书
Vue+Element UI实现概要小弹窗的全过程
2021/05/30 Vue.js
Docker官方工具docker-registry案例演示
2022/04/13 Servers