数字转英文

 更新时间:2006年12月06日 00:00:00   作者:  
<?php //___{xf_num2en}________________________________________  
//*** 說明: 數值轉英文表示法  
//=== 回傳: <string>  
//--- 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<20)  $ans.=$enws[$n]. ' ';  
            else {  
                $m=floor($n/10) * 10;  
                $ans.=$enws[$m]. ' ';  
                $n=$n % 10;  
                ($n) and $ans.=$enws[$n]. ' ';  
            }  
        }  
        return $ans;  
    }   //--xf_enNum4 ?>

相关文章

  • Swoole4.4协程抢占式调度器详解

    Swoole4.4协程抢占式调度器详解

    这篇文章主要介绍了Swoole4.4协程抢占式调度器详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • php格式化金额函数分享

    php格式化金额函数分享

    这篇文章主要介绍了php格式化金额函数分享,需要的朋友可以参考下
    2015-02-02
  • PHP查询数据库中满足条件的记录条数(两种实现方法)

    PHP查询数据库中满足条件的记录条数(两种实现方法)

    在需要输出网站用户注册数或者插入数据之前判断是否有重复记录时,就需要获取满足条件的MySQL查询的记录数目,接下来介绍两种查询统计方法,感兴趣的朋友可以了解下啊,或许对你有所帮助
    2013-01-01
  • PHP框架Laravel学习心得体会

    PHP框架Laravel学习心得体会

    Laravel是一套简洁、优雅的PHP Web开发框架 (PHP Web Framework) 。在世界(不含中国)PHP框架的占有率超过40%。下面通过本文给大家分享我的PHP框架Laravel学习心得体会,欢迎大家给我留言
    2015-10-10
  • laravel 4安装及入门图文教程

    laravel 4安装及入门图文教程

    最详细的laravel 4安装及入门图文教程 laravel安装入门,最近,很多朋友因此想学习实用laravel,但是了,自己又不会安装,网上的教程都是零零散散的,无从下手。今天就为大家整理出来,希望对大家有所帮助
    2014-10-10
  • thinkphp中html:list标签传递多个参数实例

    thinkphp中html:list标签传递多个参数实例

    这篇文章主要介绍了thinkphp中html:list标签传递多个参数的解决方法,在处理参数传递的情况非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • PHP随机生成18位不重复的订单号代码实例

    PHP随机生成18位不重复的订单号代码实例

    这篇文章主要介绍了PHP随机生成18位不重复的订单号代码实例,代码很简单但是很实用,有需要的同学可以参考下
    2021-03-03
  • laravel执行php artisan migrate报错的解决方法

    laravel执行php artisan migrate报错的解决方法

    今天小编就为大家分享一篇laravel执行php artisan migrate报错的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • thinkphp模板的包含与渲染实例分析

    thinkphp模板的包含与渲染实例分析

    这篇文章主要介绍了thinkphp模板的包含与渲染,实例分析了模板包含与渲染的用法与相关技巧,是比较实用的技巧,需要的朋友可以参考下
    2014-11-11
  • php实现图片压缩处理

    php实现图片压缩处理

    这篇文章主要为大家详细介绍了php实现图片压缩处理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09

最新评论