php代码
<?php class TransFormNumber{ public $chinaData = array('1'=>'壹','2'=>'贰','3'=>'叁','4'=>'肆','5'=>'伍','6'=>'陆','7'=>'柒','8'=>'捌','9'=>'玖'); public $chinaDataInt = array('1'=>'元','2'=>'拾','3'=>'佰','4'=>'仟','5'=>'万','6'=>'拾','7'=>'佰','8'=>'仟','9'=>'亿','10'=>'拾','11'=>'佰','12'=>'仟','13'=>'万'); public $chinaDataFloat = array('1'=>'角','2'=>'分'); private $Intnumber; // string private $Floatnumber; // string public $error = array('0'=>'零','def'=>'数据格式不支持'); public function __construct($intnumber,$floatnumber){ $this->Intnumber = $intnumber; $this->Floatnumber = $floatnumber; } /*13位整数*/ public function getTransInt(){ $this->Intnumber = intval($this->Intnumber); $len = strlen($this->Intnumber); if($len > 13){ return $this->errorNotice(1); } if($this->Intnumber == 0){ return $this->errorNotice('def'); } $intData = strrev(substr($this->Intnumber,0,$len)); $data = $this->setTransInt($intData,$len); krsort($data); $str = rtrim(join($data,''),'零'); if(substr($this->Intnumber,$len-1,1) == 0){ $str.='元'; } unset($data); return $str; } public function getTransFloat(){ return $this->setTransFloat($this->Floatnumber,strlen($this->Floatnumber)); } private function setTransInt($intData,$pos){ for($i=0;$i<$pos;$i++){ $oneData = substr($intData,$i,1); if(($i == 4 || ($i%8) == 4) && $oneData == 0){ if(substr($intData,$i+1,1) == 0 && substr($intData,$i+2,1) == 0 && substr($intData,$i+3,1) == 0){ if(substr($intData,$i-1,1) == 0){ continue; }else{ $data[] = '零'; } }else{ $data[] = '万'; continue; } continue; } if($i%8 == 0 && $i != 0 && $oneData == 0){ $data[] = '亿'; } if($oneData == 0){ if(($i == 4 || $i == 7)){ if((substr($intData,$i-1,1) ==0)){ continue; }else{ $data[] = '零'; } }else{ if(substr($intData,$i-1,1) !=0 && $i !=3 && $i != 8){ $data[] = '零'; }else{ if($i == 3 && substr($intData,$i,1) == 0 && substr($intData,$i-1,1) != 0){ $data[] = '零'; } } } }else{ $data[] = $this->chinaData[$oneData].$this->chinaDataInt[$i+1]; } } unset($intData,$oneData,$i); return $data; } //紧支持两位小数 private function setTransFloat($floatData,$pos){ if($pos > 2){ return $this->errorNotice('def'); } if($floatData{0} == 0){ $data[] = '零'; }else{ $data[] = $this->chinaData[$floatData{0}].$this->chinaDataFloat[1]; } if($floatData{1} != 0 ){ $data[] = $this->chinaData[$floatData{1}].$this->chinaDataFloat[2]; } return implode('',$data); } public function errorNotice($error){ return $this->error[$error]; } } $num = new TransFormNumber('100228030','80'); echo $num->getTransInt(); echo $num->getTransFloat();
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
刺客信條陰影:貝殼謎語解決方案
3 週前ByDDD
Windows 11 KB5054979中的新功能以及如何解決更新問題
2 週前ByDDD
在哪裡可以找到原子中的起重機控制鑰匙卡
3 週前ByDDD
<🎜>:死鐵路 - 如何完成所有挑戰
4 週前ByDDD
Atomfall指南:項目位置,任務指南和技巧
4 週前ByDDD

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

SublimeText3漢化版
中文版,非常好用

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)