实用小工具:数字金额转人民币/美元大写
国庆节后的第一个工作日,依旧是日常忙。各种需求犹如节后大爆发一样 扑面而来。于是乎,忙于完成需求以及解决各类问题。但是,有颗好奇心的我,怎么会仅仅满足于完成需求,而不在其中找到一些有趣功能转为实用的小工具呢。
数字金额转人民币/美元大写的由来电商、金融类网站是和钱打交道最多的,而电商类在处理订单类更是需要对其进行打印清单,并要求对上面的金额不仅要求是数字,而且还需要人民币数字大写。设置多币种的话,还需要转成对应国家语言的数字金额。着实要花点精力、费点脑子。
实践,匠人精神于是,我既然在完成这个功能的基础上,还是需要基于多种情况进行完善下。
先定义金额转大写 MoneyConvert类,然后
需要 数字金额转人民币大写 就有了:
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_RMB,$money);输入金额:100050.23。转换成大写为: 壹拾万零伍拾元贰角叁分
需要 数字金额转美元大写(美分表达):
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_DOLLAR,$money,'cents');输入金额:100050.23。转换成大写为: ONE HUNDRED THOUSAND,FIFTY AND CENTS TWENTY-THREE ONLY【美分表达(数字转换到文字)】
需要 数字金额转美元大写(美点表达) :
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_DOLLAR,$money,'point');输入金额:100050.23。转换成大写为: ONE HUNDRED THOUSAND,FIFTY AND POINT TWENTY-THREE ONLY【美点表达(拼出大写字母)】
最后是 数字金额转美元大写(分数表达法):
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_DOLLAR,$money,'fraction');输入金额:100050.23。转换成大写为: ONE HUNDRED THOUSAND,FIFTY AND TWENTY-THREE【分数表达法(只接受数字)】
总结数字金额转人民币/美元大写,本身可能不复杂。但是,确实实用。把金额转人民币/美元大写结合场景,发散下思维就能写出一个相对较全的功能。下次再用的时候就方便多了~
参考链接:
https://github.com/masonyang/smalltools
实用小工具:数字金额转人民币/美元大写
国庆节后的第一个工作日,依旧是日常忙。各种需求犹如节后大爆发一样 扑面而来。于是乎,忙于完成需求以及解决各类问题。但是,有颗好奇心的我,怎么会仅仅满足于完成需求,而不在其中找到一些有趣功能转为实用的小工具呢。
数字金额转人民币/美元大写的由来电商、金融类网站是和钱打交道最多的,而电商类在处理订单类更是需要对其进行打印清单,并要求对上面的金额不仅要求是数字,而且还需要人民币数字大写。设置多币种的话,还需要转成对应国家语言的数字金额。着实要花点精力、费点脑子。
实践,匠人精神于是,我既然在完成这个功能的基础上,还是需要基于多种情况进行完善下。
先定义金额转大写 MoneyConvert类,然后
需要 数字金额转人民币大写 就有了:
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_RMB,$money);输入金额:100050.23。转换成大写为: 壹拾万零伍拾元贰角叁分
需要 数字金额转美元大写(美分表达):
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_DOLLAR,$money,'cents');输入金额:100050.23。转换成大写为: ONE HUNDRED THOUSAND,FIFTY AND CENTS TWENTY-THREE ONLY【美分表达(数字转换到文字)】
需要 数字金额转美元大写(美点表达) :
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_DOLLAR,$money,'point');输入金额:100050.23。转换成大写为: ONE HUNDRED THOUSAND,FIFTY AND POINT TWENTY-THREE ONLY【美点表达(拼出大写字母)】
最后是 数字金额转美元大写(分数表达法):
$money = '100050.23'; echo MoneyConvert::numbertowords(MoneyConvert::MONEY_TYPE_DOLLAR,$money,'fraction');输入金额:100050.23。转换成大写为: ONE HUNDRED THOUSAND,FIFTY AND TWENTY-THREE【分数表达法(只接受数字)】
总结数字金额转人民币/美元大写,本身可能不复杂。但是,确实实用。把金额转人民币/美元大写结合场景,发散下思维就能写出一个相对较全的功能。下次再用的时候就方便多了~
参考链接:
https://github.com/masonyang/smalltools