• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php数字转中文

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
function number2Chinese($num, $m = 1) {
	switch($m) {
		case 0:
			$CNum = array(
				array('零','壹','贰','叁','肆','伍','陆','柒','捌','玖'),
				array('','拾','佰','仟'),
				array('','萬','億','萬億')
			);
		break;
		default:
			$CNum = array(
				array('零','一','二','三','四','五','六','七','八','九'),
				array('','十','百','千'),
				array('','万','亿','万亿')
			);
		break;
	}

	if (!is_numeric($num)) {
		return false;
	}

	$flt = '';
	if (is_integer($num)) {
		$num = strval($num);
	}else if(is_numeric($num)){
		$num = strval($num);
		$rs = explode('.',$num,2);
		$num = $rs[0];
		$flt = $rs[1];
	}

	$len = strlen($num);
	$num = strrev($num);
	$chinese = '';
	
	for($i = 0,$k=0;$i < $len; $i+=4,$k++){
		$tmp_str = '';
		$str = strrev(substr($num , $i,4));
		$str = str_pad($str,4,'0',STR_PAD_LEFT);
		for ($j = 0; $j < 4; $j++) { 
			if($str{$j} !== '0'){
				$tmp_str .= $CNum[0][$str{$j}] . $CNum[1][4-1-$j];
			}
		}
		$tmp_str .= $CNum[2][$k];
		$chinese = $tmp_str . $chinese;
		unset($str);
	}
	if($flt !== ''){
		$str = '';
		for ($i=0; $i < strlen($flt); $i++) { 
			$str .= $CNum[0][$flt{$i}];
		}
		$chinese .= "点{$str}";
	}
	return $chinese;
}

$str = number2Chinese(123458656.789);
var_dump($str);

运行结果

string(63) "一亿二千三百四十五万八千六百五十六点七八九"

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php关于ob_start('ob_gzhandler')启用GZIP压缩的bug发布时间:2022-07-10
下一篇:
浅谈Nginx与PHP交互发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap