PHP金钱数字转金钱大写
/*
* 数字金额转换成中文大写金额的函数
* String Int $num 要转换的小写数字或小写字符串
* return 大写数字
*/
function num_to_rmb($num){
$c1 = "零壹贰叁肆伍陆柒捌玖";
$c2 = "分角元拾佰仟万拾佰仟亿";
//精确到分后面就不要了,所以只留两个小数位
$num = round($num, );
//将数字转化为整数
$num = $num * ;
if (strlen($num) > ) {
return "金额太大,请检查";
}
$i = ;
$c = "";
while () {
if ($i == ) {
//获取最后一位数字
$n = substr($num, strlen($num)-, );
} else {
$n = $num % ;
}
//每次将最后一位数字转化为中文
$p1 = substr($c1, * $n, );
$p2 = substr($c2, * $i, );
if ($n != '' || ($n == '' && ($p2 == '亿' || $p2 == '万' || $p2 == '元'))) {
$c = $p1 . $p2 . $c;
} else {
$c = $p1 . $c;
}
$i = $i + ;
//去掉数字最后一位了
$num = $num / ;
$num = (int)$num;
//结束循环
if ($num == ) {
break;
}
}
$j = ;
$slen = strlen($c);
while ($j < $slen) {
//utf8一个汉字相当3个字符
$m = substr($c, $j, );
//处理数字中很多0的情况,每次循环去掉一个汉字“零”
if ($m == '零元' || $m == '零万' || $m == '零亿' || $m == '零零') {
$left = substr($c, , $j);
$right = substr($c, $j + );
$c = $left . $right;
$j = $j-;
$slen = $slen-;
}
$j = $j + ;
}
//这个是为了去掉类似23.0中最后一个“零”字
if (substr($c, strlen($c)-, ) == '零') {
$c = substr($c, , strlen($c)-);
}
//将处理的汉字加上“整”
if (empty($c)) {
return "零元整";
}else{
return $c . "整";
}
}
$money = 68000000.00;
echo num_to_rmb($money); //陆仟捌佰万元整
PHP金钱数字转金钱大写的更多相关文章
- ORACLE数字转换人民币大写
ORACLE 数字转换人民币大写 示例. 数字 :183066999230.68 人民币大写 :壹仟捌佰参拾亿陆仟陆佰玖拾玖万玖仟贰佰参 ...
- php 把数字转化为大写中文
PHP 数字转大写中文 PHP入门小菜鸟一枚.下午要求写一个把数字转成大写中文的脚本,百度了一波,几十个博客和网站都是用的那四个代码,第一个运行不了,第二个有问题,不合要求,第三个第四个太长,懒得看, ...
- 数字转人民币大写(SQL SERVER)
--数字转人民币大写NumToRMB ---新建方法create FUNCTION dbo.NumToRMB (@num numeric(14,5)) RETURNS varchar(100) ...
- 前端js 判断输入的必须是数字,判断金钱
//输入的必须是数字 $(".xzjl").on("keyup", ".num", function () { var v = $(this ...
- 分享一下 常用的转换方法(例如:数字转金钱,文本与html互转等)
public sealed class SAFCFormater { /// <summary> /// 文本格式到HTML /// </summary> /// <pa ...
- php 处理数字为金钱格式
number_format(需要转换的数字,保留小数个数,小数点符号,每三位的分隔符) echo number_format("1000000")."<br> ...
- 【PHP】金额数字转换成大写形式
<?php /*将数字金额转成大写*/ function num_to_upper($num) { $d = array('零','壹','贰','叁','肆','伍','陆','柒','捌', ...
- C# 数字转换成大写
/// <summary> /// 数字转大写 /// </summary> /// <param name="Num">数字</para ...
- Javascript作业—数字转化为大写
开始学javascript,写作业. <script type="text/javascript"> function toChinese(money){ var ch ...
随机推荐
- [Windows Server]Windows Server turn off screen auto-lock to fit scheduled tasks(Error Code :0x4F7) / 关闭Windows Server的自动锁定来解决计划任务0x4F7错误
1. 打开“运行”,输入“regedit” 并回车. 2. 找到以下注册表路径,将Attributes的值改为 2: (原为1 HKEY_LOCAL_MACHINE \SYSTEM \CurrentC ...
- x86汇编语言实践(2)
0 写在前面 为了更深入的了解程序的实现原理,近期我学习了IBM-PC相关原理,并手工编写了一些x86汇编程序. 在2017年的计算机组成原理中,曾对MIPS体系结构及其汇编语言有过一定的了解,考虑到 ...
- Quick RF Tips for General Reference
传送门:http://www.microwavetools.com/rf-tips-to-make-you-look-smart/ 全文搬运过来的,本篇文章并未有其它意义和目的,仅作为个人参考笔记,我 ...
- Windows下U盘管理程序
一个操作系统的作业,生成的程序需要使用管理员权限运行,参考了很多网上的代码,如果打开错误,请修改字符集为使用多字节字符集,并且调整为release模式. 作业的内容如下: 任务操作系统API应用体验与 ...
- Unity支持的跨平台
Windows Mac OS X Web Browsers IOS android PlayStation 3 Xbox 360 Windows Store Windows Phone Linux B ...
- C#调用DLL文件提示试图加载格式不正确的程序
最近在调用第三方的DLL遇到了一个问题:试图加载格式不正确的程序,找了好久发现都没有解决问题,一直报错,后来发现是程序编译时的配置错了,要将项目->属性->平台选中release-X86 ...
- .NET技术-2.0. 操作数据库-EF
.NET技术-2.0. 操作数据库-EF 项目参见: EF安装配置 参见: https://www.cnblogs.com/1285026182YUAN/p/10772330.html https:/ ...
- spring 4 + hibernate 4 配置数据库事务
配置事务时应该加载aopalliance-1.0.jar和aspectjweaver.jar这两个包,这两个包是必须的.
- Tomcat关闭失败,SEVERE: Could not contact localhost:8005. Tomcat may not be running.
SEVERE: Could not contact localhost:8005. Tomcat may not be running. Tomcat 启动后,关闭失败,显示以下 进入 java 的安 ...
- 关于微信emoji 表情数据库存不了,或者显示为???的问题
必须我utf8mb4,数据库就可以存 2. 数据库连接也需要是utf8mb4