Home >Backend Development >PHP Tutorial >数字转英文_php实例

数字转英文_php实例

WBOY
WBOYOriginal
2016-06-07 17:27:101485browse

//*** 說明: 數值轉英文表示法  
//=== 回傳:   
//--- NN)數值  FF)小數位  
//============================================================  
    function xf_num2en($NN, $FF=0) {  
        //===[前置]========================================  
          if (!is_numeric($NN)) return '';  
          ($FF>2) and $FF=2;  
          $xn='';       $xf='';  

          global $enws;  
          $enws=array(  
                0=>"zero",1=>"one",2=>"two",3=>"three",4=>"four",  
                5=>"five",6=>"six",7=>"seven",8=>"eight",9=>"nine",  
                10=>"ten",11=>"eleven",12=>"twelve",  
                13=>"thirteen",14=>"fourteen", 15=>"fifteen",  
                16=>"sixteen",17=>"seventeen",18=>"eighteen",19=>"nineteen",  
                20=>"twenty",30=>"thirty",40=>"forty",50=>"fifty",  
                60=>"sixty",70=>"seventy",80=>"eighty",90=>"ninety");  
        //===[整數]========================================  
          $nk=floor($NN);  
          $cnt=0;  
          while ($nk) {  
                $n=$nk % 1000;  
                if ($n) {  
                    $x=xf_enNum4($n);  
                    if ($cnt==1)        $xn=$x. 'thousand '. $xn;  
                    elseif ($cnt==2)    $xn=$x. 'million '. $xn;  
                    elseif ($cnt==3)    $xn=$x. 'billion '. $xn;  
                    elseif ($cnt==4)    $xn=$x. 'trillion '. $xn;  
                    else                $xn=$x;  
                }  
                $cnt+=1;  
                $nk=floor($nk/1000);  
          }     //--while  
        //===[小數]========================================  
          if ($FF>0) {  
              $n=floor($NN*100) % 100;  
              ($n) and $xf=xf_enNum4($n). 'cent';  
          }  

          return $xn.$xf;  
    }   //--xf_num2en  

    function xf_enNum4($NN) {  
        global $enws;  
        $ans='';  
        $n=floor($NN/100);  
        ($n) and $ans=$enws[$n]. ' hundred ';  
        $n=$NN % 100;  
        if ($n) {  
            if ($n            else {  
                $m=floor($n/10) * 10;  
                $ans.=$enws[$m]. ' ';  
                $n=$n % 10;  
                ($n) and $ans.=$enws[$n]. ' ';  
            }  
        }  
        return $ans;  
    }   //--xf_enNum4 ?>

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn