用PHP实现小写金额转换大写金额的代码(精确到分)


Posted in PHP onJanuary 10, 2012
/** 
*数字金额转换成中文大写金额的函数 
*String Int $num 要转换的小写数字或小写字符串 
*return 大写字母 
*小数位为两位 
**/ 
function get_amount($num){ 
$c1 = "零壹贰叁肆伍陆柒捌玖"; 
$c2 = "分角元拾佰仟万拾佰仟亿"; 
$num = round($num, 2); 
$num = $num * 100; 
if (strlen($num) > 10) { 
return "数据太长,没有这么大的钱吧,检查下"; 
} 
$i = 0; 
$c = ""; 
while (1) { 
if ($i == 0) { 
$n = substr($num, strlen($num)-1, 1); 
} else { 
$n = $num % 10; 
} 
$p1 = substr($c1, 3 * $n, 3); 
$p2 = substr($c2, 3 * $i, 3); 
if ($n != '0' || ($n == '0' && ($p2 == '亿' || $p2 == '万' || $p2 == '元'))) { 
$c = $p1 . $p2 . $c; 
} else { 
$c = $p1 . $c; 
} 
$i = $i + 1; 
$num = $num / 10; 
$num = (int)$num; 
if ($num == 0) { 
break; 
} 
} 
$j = 0; 
$slen = strlen($c); 
while ($j < $slen) { 
$m = substr($c, $j, 6); 
if ($m == '零元' || $m == '零万' || $m == '零亿' || $m == '零零') { 
$left = substr($c, 0, $j); 
$right = substr($c, $j + 3); 
$c = $left . $right; 
$j = $j-3; 
$slen = $slen-3; 
} 
$j = $j + 3; 
} if (substr($c, strlen($c)-3, 3) == '零') { 
$c = substr($c, 0, strlen($c)-3); 
} 
if (empty($c)) { 
return "零元整"; 
}else{ 
return $c . "整"; 
} 
}
PHP 相关文章推荐
PHP实现用户认证及管理完全源码
Mar 11 PHP
php Sql Server连接失败问题及解决办法
Aug 07 PHP
php 文章采集正则代码
Dec 28 PHP
php垃圾代码优化操作代码
Aug 05 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
Jun 07 PHP
CURL状态码列表(详细)
Jun 27 PHP
php中文乱码怎么办如何让浏览器自动识别utf-8
Jan 15 PHP
destoon利用Rewrite规则设置网站安全
Jun 21 PHP
CodeIgniter表单验证方法实例详解
Mar 03 PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
Nov 15 PHP
PHP工厂模式、单例模式与注册树模式实例详解
Jun 03 PHP
Yii 框架使用数据库(databases)的方法示例
May 19 PHP
解决文件名解压后乱码的问题 将文件名进行转码的代码
Jan 10 #PHP
php 字符串替换的方法
Jan 10 #PHP
PHP中strtotime函数使用方法分享
Jan 10 #PHP
比较详细PHP生成静态页面教程
Jan 10 #PHP
php中通过正则表达式下载内容中的远程图片的函数代码
Jan 10 #PHP
PHP三元运算符的结合性介绍
Jan 10 #PHP
如何用phpmyadmin设置mysql数据库用户的权限
Jan 09 #PHP
You might like
ADODB类使用
2006/11/25 PHP
本地机apache配置基于域名的虚拟主机详解
2013/08/10 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
Laravel框架分页实现方法分析
2018/06/12 PHP
PHP扩展Swoole实现实时异步任务队列示例
2019/04/13 PHP
动态改变textbox的宽高的js
2006/10/26 Javascript
改写一个简单的菜单 弹性大小
2010/12/02 Javascript
JavaScript执行顺序详细介绍
2013/12/04 Javascript
脚本合并提升javascript性能示例
2014/02/24 Javascript
js实现点击图片改变页面背景图的方法
2015/02/28 Javascript
thinkphp实现无限分类(使用递归)
2015/12/19 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
js以分隔符分隔数组中的元素并转换为字符串的方法
2016/11/16 Javascript
jQuery Validate验证框架详解(推荐)
2016/12/17 Javascript
JavaScript基础进阶之数组方法总结(推荐)
2017/09/04 Javascript
动态加载JavaScript文件的3种方式
2018/05/05 Javascript
详谈vue中router-link和传统a链接的区别
2020/07/22 Javascript
VueCli生产环境打包部署跨域失败的解决
2020/11/13 Javascript
vue点击Dashboard不同内容 跳转到同一表格的实例
2020/11/13 Javascript
[42:50]NB vs VP 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python 中split 和 strip的实例详解
2017/07/12 Python
python爬虫_微信公众号推送信息爬取的实例
2017/10/23 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
Python Selenium 之关闭窗口close与quit的方法
2019/02/13 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
2019/06/24 Python
Python动态导入模块和反射机制详解
2020/02/18 Python
一款利用纯css3实现的win8加载动画的实例分析
2014/12/11 HTML / CSS
HTML5 图片悬停放大的实现代码示例
2019/12/04 HTML / CSS
意大利在线药房:shop-farmacia.it
2019/03/12 全球购物
Linux开机引导的步骤是什么
2015/10/19 面试题
会计专业毕业生自荐信范文
2013/12/20 职场文书
工艺技术员岗位职责
2015/02/04 职场文书
大学生个人简历自荐信
2015/03/06 职场文书
少先队中队工作总结
2015/08/14 职场文书
2019年幼儿园管理条例范本!
2019/07/17 职场文书