实用函数-php数字转为汉字金额
2015-04-19 22:48
387 查看
<?php /** * 数字转换为中文 * @param string|integer|float $num 目标数字 * @param integer $mode 模式[true:金额(默认),false:普通数字表示] * @param boolean $sim 使用小写(默认) * @return string */ function number2chinese($num,$mode = true,$sim = true){ if(!is_numeric($num)) return '含有非数字非小数点字符!'; $char = $sim ? array('零','一','二','三','四','五','六','七','八','九') : array('零','壹','贰','叁','肆','伍','陆','柒','捌','玖'); $unit = $sim ? array('','十','百','千','','万','亿','兆') : array('','拾','佰','仟','','萬','億','兆'); $retval = $mode ? '元':'点'; //小数部分 if(strpos($num, '.')){ list($num,$dec) = explode('.', $num); $dec = strval(round($dec,2)); if($mode){ $retval .= "{$char[$dec['0']]}角{$char[$dec['1']]}分"; }else{ for($i = 0,$c = strlen($dec);$i < $c;$i++) { $retval .= $char[$dec[$i]]; } } } //整数部分 $str = $mode ? strrev(intval($num)) : strrev($num); for($i = 0,$c = strlen($str);$i < $c;$i++) { $out[$i] = $char[$str[$i]]; if($mode){ $out[$i] .= $str[$i] != '0'? $unit[$i%4] : ''; if($i>1 and $str[$i]+$str[$i-1] == 0){ $out[$i] = ''; } if($i%4 == 0){ $out[$i] .= $unit[4+floor($i/4)]; } } } $retval = join('',array_reverse($out)) . $retval; return $retval; } //实例调用===================================================== $num = '0123648867.789'; echo $num,'<br>'; //普通数字的汉字表示 echo '普通:',number2chinese($num,false),''; echo '<br>'; //金额汉字表示 echo '金额(简体):',number2chinese($num,true),''; echo '<br>'; echo '金额(繁体):',number2chinese($num,true,false); ?>
运行截图:
相关文章推荐
- 分享函数-数字转为汉字金额
- php 编一函数计算一个字符串中有多少个字母.汉字.数字?
- PHP人民币金额数字转中文大写的函数代码
- PHP实现金额数字转换成大写函数
- PHP人民币金额数字转中文大写的函数代码
- PHP人民币金额数字转中文大写的函数
- PHP人民币金额数字转中文大写的函数
- php 金额小写数字转大写汉字
- PHP人民币金额数字转中文大写的函数
- php的数字转汉字小函数
- PHP 数字转汉字函数
- php数字转汉字的函数算法
- 数字金额转为汉字金额
- php获取汉字首字母的函数
- PHP数字和字符串ID互转函数(类似优酷ID)
- 数字转汉字函数(转自http://www.cnblogs.com/haoxiaobo/archive/2005/01/11/89922.html)
- php汉字转成拼音函数
- PHP自带函数给数字或字符串自动补齐位数
- php汉字转成拼音函数
- PHP 中文汉字转换成拼音函数