php小写金额转大写
public static function amountInWords($num) {
if (!is_numeric($num) || empty($num))
return "";
$return = "";
$unit = array("分", "角", "圆", "整");
$dw = array("", "拾", "佰", "仟", "", "万", "亿", "兆");
$char = array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖");
preg_match_all("/(\d*)\.?(\d*)/", $num, $ar);
if (intval($ar[2][0]) > 0) {
$return .= $ar[2][0][0] == 0 ? "" : $char[$ar[2][0][0]] . $unit[1];
if (isset($ar[2][0][1])) {
if (empty($return) && $ar[1][0] > 0)
$return = $char[0] . $char[$ar[2][0][1]] . $unit[0];
else
$return .= $char[$ar[2][0][1]] . $unit[0];
}
}else{
$return .= $unit[3];
}
if ($ar[1][0] != "") {
$str = strrev($ar[1][0]);
$len = strlen($str);
for ($i = 0; $i < $len; $i++) {
$out[$i] = $char[$str[$i]];
$out[$i] .= $str[$i] != "0"? $dw[$i%4] : "";
if ($str[$i] + $str[$i-1] == 0)
$out[$i] = "";
if ($i%4 == 0)
$out[$i] .= $dw[4+floor($i/4)];
if ($out[$i] == "零万")
$out[$i] = "万零";
}
$left = join("", array_reverse($out));
if (!empty($left))
$return = $left . $unit[2] . $return;
}
return $return;
}
php小写金额转大写的更多相关文章
- C#:小写金额转换为大写
#region 小写金额转换为大写 public static string CurrToChnNum(double Currnum) { string sResult = ""; ...
- C#实现阿拉伯数字(小写金额)到大写中文(大写金额)的转换
/// <summary> /// 本类实现阿拉伯数字到大写中文的转换 /// 该类没有对非法数字进行判别,请事先自己判断数字是否合法 /// </summary& ...
- jsp页面输入小写金额转大写
<script> function chineseNumber(num){ if (isNaN(num) || num > Math.pow(10, 12)) return &quo ...
- SQL标量值函数:小写金额转大写
我们日常开发业务系统中,作为统计报表中,特别是财务报表,显示中文金额经常遇到. 转换大小写的方法有很多,以下是从数据库函数方面解决这一问题. 效果如图: 调用:SELECT dbo.[Fn_Conve ...
- js 小写金额转大写
function smalltoBIG(n) { var fraction = ['角', '分']; var digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', ...
- js 人民币小写金额转换为大写
function smalltoBIG(n) { var fraction = ['角', '分']; var digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', ...
- JS将人民币小写金额转换为大写
/** 数字金额大写转换(可以处理整数,小数,负数) */ function smalltoBIG(n) { var fraction = ['角', '分']; var digit = ['零', ...
- java将小写金额转换为大写的工具类
public class Tool { private static final String UNIT = "万千佰拾亿千佰拾万千佰拾元角分"; ...
- SQL函数:小写金额转换成大写
/********************************************************作者:版本:1.0创建时间:20020227修改时间:功能:小写金额转换成大写参数:n ...
随机推荐
- OPENVPN开启用户password认证
一.服务端配置 1.改动openvpn的主配置文件,加入例如以下内容 [root@ttt openvpn]# cat /etc/openvpn/server.conf |more #########a ...
- 深度分析 Java 的 ClassLoader 机制(源码级别)(转)
写在前面:Java中的所有类,必须被装载到jvm中才能运行,这个装载工作是由jvm中的类装载器完成的,类装载器所做的工作实质是把类文件从硬盘读取到内存中,JVM在加载类的时候,都是通过ClassLoa ...
- APK ubuntu下 数字签名
Android系统要求每个Android应用程序必需要经过数字签名才可以安装到系统中,也就是说假设一个Android应用程序没有经过数字签名,是没有办法安装到系统中的! Android通过数字签名来标 ...
- 透过浏览器看HTTP缓存(转)
作为前端开发人员,对于我们的站点或应用的缓存机制我们能做的似乎不多,但这些却是与我们关注的性能息息相关的部分,站点没有做任何缓存机制,我们的页面可能会因为资源的下载和渲染变得很慢,但大家都知道去找前端 ...
- Spring Assert主张 (参议院检测工具的方法-主张)
Web 收到申请表格提交的数据后都需要对其进行合法性检查,假设表单数据是不合法的,该请求将被拒绝.分类似的,当我们写的类方法,该方法还经常需要组合成参 法国检查.假设参议院不符合要求,方法通过抛出异常 ...
- Hdu 3341 Lost's revenge (ac+自己主动机dp+hash)
标题效果: 举个很多种DNA弦,每个字符串值值至1.最后,一个长字符串.要安排你最后一次另一个字符串,使其没事子值和最大. IDEAS: 首先easy我们的想法是想搜索的!管她3721..直接一个字符 ...
- CF417D--- Cunning Gena(序列+像缩进dp)
A boy named Gena really wants to get to the "Russian Code Cup" finals, or at least get a t ...
- SignalR与ActiveMQ
SignalR与ActiveMQ结合构建实时通信 一.概述 本教程主要阐释了如何利用SignalR与消息队列的结合,实现不同客户端的交互 SignalR如何和消息队列交互(暂使用ActiveMQ消 ...
- 如何js编译的文件dll对于网页电话
1. 加入一个项目的解决方案:JSControl 2. 在这个项目中加入js文件(JScript1.js) 脚本的内容: function showAlert(){ alert('Today is a ...
- Objective C Runtime 开发介绍
简介 Objective c 语言尽可能的把决定从编译推迟到链接到运行时.只要可能,它就会动态的处理事情.这就意味着它不仅仅需要一个编译器,也需要一个运行时系统来执行变异好的代码.运行时系统就好像是O ...