将数字型的人民币转换成中文形的文字
// 调用函数
echo $num = "100730213.56";
echo "<br />";
echo Chinese_RMB($num);
输入结果
100730213.56
壹亿零零柒拾叁万零贰佰壹拾叁元伍角陆分
php完整代码:
<?php
/***
* 人民币大写转换函数
*/
function Chinese_RMB($money) {
$money = round($money, 2); // 四舍五入
if ($money <= 0) {
return '零元';
}
$units = array ( '', '拾', '佰', '仟', '', '万', '亿', '兆' );
$amount = array( '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' );
$arr = explode('.', $money); // 拆分小数点
$money = strrev($arr[0]); // 翻转整数
$length = strlen($money); // 获取数字的长度
for ($i = 0; $i < $length; $i++) {
$int[$i] = $amount[$money[$i]]; // 获取大写数字
if (!empty($money[$i])) {
$int[$i] .= $units[$i%4]; // 获取整数位
}
if ($i%4 == 0) {
$int[$i] .= $units[4+floor($i/4)]; // 取整
}
}
$con = isset($arr[1]) ? '元' . $amount[$arr[1][0]] . '角' . $amount[$arr[1][1]] . '分' : '元整';
return implode('', array_reverse($int)) . $con; // 整合数组为字符串
}
// 调用函数
echo $num = "100730213.56";
echo "<br />";
echo Chinese_RMB($num);
?>