Heim >php教程 >php手册 >一个数字转换为汉字的函数

一个数字转换为汉字的函数

WBOY
WBOYOriginal
2016-06-07 11:43:501984Durchsuche

可以实现数字转换为金额汉字或者普通的汉字表示:
/**<br>  * 数字转换为中文<br>  * @param  string|integer|float  $num  目标数字<br>  * @param  integer $mode 模式[true:金额(默认),false:普通数字表示]<br>  * @param  boolean $sim 使用小写(默认)<br>  * @return string<br>  */<br> function number2chinese($num,$mode = true,$sim = true){<br>     if(!is_numeric($num)) return '含有非数字非小数点字符!';<br>     $char    = $sim ? array('零','一','二','三','四','五','六','七','八','九')<br>                 : array('零','壹','贰','叁','肆','伍','陆','柒','捌','玖');<br>     $unit    = $sim ? array('','十','百','千','','万','亿','兆')             <br>                 : array('','拾','佰','仟','','萬','億','兆');<br>     $retval  = $mode ? '元':'点';<br>  <br>     //小数部分<br>     if(strpos($num, '.')){<br>         list($num,$dec) = explode('.', $num);<br>         $dec = strval(round($dec,2));<br>         if($mode){<br>             $retval .= "{$char[$dec['0']]}角{$char[$dec['1']]}分";<br>         }else{<br>             for($i = 0,$c = strlen($dec);$i                  $retval .= $char[$dec[$i]];<br>             }<br>         }<br>     }<br>     //整数部分<br>     $str = $mode ? strrev(intval($num)) : strrev($num);<br>     for($i = 0,$c = strlen($str);$i          $out[$i] = $char[$str[$i]];<br>         if($mode){<br>             $out[$i] .= $str[$i] != '0'? $unit[$i%4] : '';<br>             if($i>1 and $str[$i]+$str[$i-1] == 0){<br>                 $out[$i] = '';<br>             }<br>             if($i%4 == 0){<br>                 $out[$i] .= $unit[4+floor($i/4)];<br>             }<br>         }<br>     }<br>     $retval = join('',array_reverse($out)) . $retval;<br>     return $retval;<br> }<br> $num = '0123648867.789';<br> echo $num,'';<br> //普通数字的汉字表示<br> echo '普通:',number2chinese($num,false),'';<br> //金额汉字表示<br> echo '金额(简体):',number2chinese($num,true),'';<br> echo '金额(繁体):',number2chinese($num,true,false);

AD:真正免费,域名+虚机+企业邮箱=0元

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn