大写金额转换成阿拉伯数字金额
生活随笔
收集整理的這篇文章主要介紹了
大写金额转换成阿拉伯数字金额
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
<?php/*** 大寫金額轉換成阿拉伯數字金額* * FuntionName:convert2Number* @param string|$moneyCn* @return int|mixed* * $moneyCn = "貳億零壹拾萬叁仟零壹圓"; -> 200103001* $moneyCn = "玖仟捌佰叁拾億零壹拾捌萬貳仟柒佰圓整"; -> 983000182700* $moneyCn = "貳佰億壹仟萬零壹圓整"; -> 20010000001*/function convert2Number($moneyCn){static $unit2Number = ['億' => 100000000,'萬' => 10000,'仟' => 1000,'佰' => 100,'拾' => 10,'圓' => 1,];static $cn2Number = ['零' => 0,'壹' => 1,'貳' => 2,'叁' => 3,'肆' => 4,'伍' => 5,'陸' => 6,'柒' => 7,'捌' => 8,'玖' => 9,'拾' => 10,];$result = 0;foreach($unit2Number as $unit => $number) {$pos = mb_strpos($moneyCn, $unit);if ($pos === false) {// 這個就是沒有找到這個需要的單位continue;}$cn = mb_substr($moneyCn, 0, $pos);if (mb_substr($cn, 0, 1) == '零') {$cn = mb_substr($cn, 1);}$number = 0;if (mb_strlen($cn) == 1) {$number = $cn2Number[$cn];} else if (mb_strlen($cn) > 1) {$number = convert2Number($cn . "圓");}$result += $number * $unit2Number[$unit];$moneyCn = mb_substr($moneyCn, $pos + mb_strlen($unit));}return $result;}$moneyCn = "玖仟捌佰叁拾億零壹拾捌萬貳仟柒佰圓整";
echo convert2Number($moneyCn);//983000182700
總結
以上是生活随笔為你收集整理的大写金额转换成阿拉伯数字金额的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql局域网访问6_mysql局域网
- 下一篇: 客户的sample和项目计划