做电子商务网站需要学什么,王店镇建设中心小学网站,ui界面设计作品图片说明,asp.net 4.0网站建设基础教程 下载在PHP中#xff0c;将人民币的中文汉字金额转换为数字#xff0c;或者将数字转换为人民币的中文汉字金额#xff0c;通常需要自定义一些函数来实现这一转换过程。下面分别给出这两个转换的示例代码。 数字转人民币中文汉字
function numberToChinese($num) { $cnNums arr…在PHP中将人民币的中文汉字金额转换为数字或者将数字转换为人民币的中文汉字金额通常需要自定义一些函数来实现这一转换过程。下面分别给出这两个转换的示例代码。 数字转人民币中文汉字
function numberToChinese($num) { $cnNums array(零, 壹, 贰, 叁, 肆, 伍, 陆, 柒, 捌, 玖); $cnUnits array(, 拾, 佰, 仟, 万, 拾, 佰, 仟, 亿); $numStr strval($num); $numStr array_reverse(str_split($numStr)); $result ; $zeroCount 0; for ($i 0; $i count($numStr); $i) { $digit intval($numStr[$i]); $unit $cnUnits[$i % 4]; if ($digit 0) { $zeroCount; } else { if ($zeroCount 0) { $result $cnNums[0] . $result; } $zeroCount 0; $result $cnNums[$digit] . $unit . $result; } if (($i 1) % 4 0 $digit ! 0) { $result $cnUnits[4 intval(($i 1) / 4) - 1] . $result; } } $result trim($result, $cnNums[0]); // 去除结果字符串两边的零 if (empty($result)) { $result $cnNums[0]; // 如果结果为空则返回零 } return 人民币 . $result . 元整;
} // 示例用法
echo numberToChinese(123456789); // 输出人民币壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元整人民币中文汉字转数字
function chineseToNumber($chinese) { // 去除人民币和元整等字样 $chinese preg_replace(/人民币|元整|元正|元|整|正/i, , $chinese); $cnNums array(零, 壹, 贰, 叁, 肆, 伍, 陆, 柒, 捌, 玖); $cnUnits array(, 拾, 佰, 仟); $unitPosition array(1, 10, 100, 1000); // 个、十、百、千 $num 0; $position 0; // 万位、亿位等的位置初始为个位 $isPrevZero false; // 前一个数字是否为零 $chinese str_split($chinese); for ($i 0; $i count($chinese); $i) { $char $chinese[$i]; if (in_array($char, $cnNums)) { $digit array_search($char, $cnNums); if ($digit 0 $isPrevZero) { continue; // 连续的零只计算一个 } $num $digit * $unitPosition[$i % 4] * pow(10000, intval($position)); $isPrevZero ($digit 0); } elseif (in_array($char, $cnUnits)) { if ($char 万 || $char 亿) { $position; } } } return $num;
} // 示例用法
echo chineseToNumber(人民币壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元整); // 输出123456789