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 相关文章推荐
PHP数据缓存技术
Feb 14 PHP
用PHP伪造referer突破网盘禁止外连的代码
Jun 15 PHP
php empty函数判断mysql表单是否为空
Apr 12 PHP
php include加载文件两种方式效率比较
Aug 08 PHP
PHP模块 Memcached功能多于Memcache
Jun 14 PHP
php使用pack处理二进制文件的方法
Jul 03 PHP
PHP函数eval()介绍和使用示例
Aug 20 PHP
PHP实现的简单日历类
Nov 29 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
Jan 30 PHP
php使用scandir()函数扫描指定目录下所有文件示例
Jun 08 PHP
laravel框架实现去掉URL中index.php的方法
Oct 12 PHP
PHP Swoole异步读取、写入文件操作示例
Oct 24 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
php抓取https的内容的代码
2010/04/06 PHP
PHP警告Cannot use a scalar value as an array的解决方法
2012/01/11 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
PHP的Laravel框架结合MySQL与Redis数据库的使用部署
2016/03/21 PHP
Yii2中使用asset压缩js,css文件的方法
2016/11/24 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
PHP添加PNG图片背景透明水印操作类定义与用法示例
2019/03/12 PHP
JS 表单验证大全
2011/11/23 Javascript
jQuery过滤选择器:not()方法使用介绍
2014/04/20 Javascript
原生javascript实现拖动元素示例代码
2014/09/01 Javascript
跟我学习javascript的prototype使用注意事项
2015/11/17 Javascript
jquery通过name属性取值的简单实现方法
2016/06/20 Javascript
基于JavaScript实现在新的tab页打开url
2016/08/04 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
如何正确理解javascript的模块化
2017/03/02 Javascript
angular十大常见问题
2017/03/07 Javascript
浅谈vue同一页面中拥有两个表单时,的验证问题
2018/09/18 Javascript
vue 项目 iOS WKWebView 加载
2019/04/17 Javascript
微信小程序自定义弹窗实现详解(可通用)
2019/07/04 Javascript
封装一下vue中的axios示例代码详解
2020/02/16 Javascript
[27:02]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第三场
2014/05/24 DOTA
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
用Python中的__slots__缓存资源以节省内存开销的方法
2015/04/02 Python
pip安装Python库时遇到的问题及解决方法
2017/11/23 Python
numpy中索引和切片详解
2017/12/15 Python
python通过txt文件批量安装依赖包的实现步骤
2019/08/13 Python
python实现图片横向和纵向拼接
2020/03/05 Python
纯CSS实现菜单、导航栏的3D翻转动画效果
2014/04/23 HTML / CSS
Staples加拿大官方网站:办公用品一站式采购
2016/09/25 全球购物
简述数据库的设计过程
2015/06/22 面试题
综合素质的自我鉴定
2013/10/07 职场文书
办公室主任先进事迹
2014/01/18 职场文书
2014年小学生迎国庆65周年演讲稿
2014/09/27 职场文书
实习班主任自我评价
2015/03/11 职场文书
python实现三次密码验证的示例
2021/04/29 Python
springboot 启动如何排除某些bean的注入
2021/08/02 Java/Android