PHP 将阿拉伯数字转化为汉字的函数

前端之家收集整理的这篇文章主要介绍了PHP 将阿拉伯数字转化为汉字的函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
PHP将阿拉伯数字转化为汉字的函数感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
有木有遇到财务相关的开发,好端端的阿拉伯数字,非得整成汉字形式显示,这也就罢了,还得整成繁体汉字。很苦恼吧。
下面将和你分享一下本人遇到需要利用PHP将阿拉伯数字转化为汉字时的处理办法,可以总结为一个函数,具体自己研究去吧。

/**
* PHP将阿拉伯数字转化为汉字的函数
*
* @param 
* @arrange 512-笔记网: www.512Pic.com
**/
function num2char($num,$mode=true){
$char = array('零','一','二','三','四','五','六','七','八','九');
//$char = array('零','壹','贰','叁','肆','伍','陆','柒','捌','玖);
$dw = array('','十','百','千','','万','亿','兆');
//$dw = array('','拾','佰','仟','萬','億','兆');
$dec = '点'; //$dec = '點';
$retval = '';
if($mode){
preg_match_all('/^0*(\d*)\.?(\d*)/',$num,$ar);
}else{
preg_match_all('/(\d*)\.?(\d*)/',$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;
}
/***   来自编程之家 jb51.cc(jb51.cc)   ***/
使用示例:

/**
* PHP将阿拉伯数字转化为汉字的函数
*
* @param 
* @arrange 512-笔记网: www.512Pic.com
**/
echo '300045.0123:'.num2char('300045.0123');
/***   来自编程之家 jb51.cc(jb51.cc)   ***/

猜你在找的PHP相关文章