php专区

 首页 > php专区 > PHP进阶 > 算法 > 分享一个用php写的人民币数字转人民币大写的函数

分享一个用php写的人民币数字转人民币大写的函数

分享到:
【字体:

有时候我们需要在应用程序中使用随机生成用户名和密码,这样可以大大提高应用程序的安全,在PHP中生成随机用户名和密码可以使用 mt_rand 函数或者是 rand 函数, rand 函数在验证码中的应用多一些,而生成长字符的随机码一般都需要 mt_rand 函数。

使用PHP生成随机数可以应用在许多地方,比如可以设计程序的随机密码、模拟掷骰子游戏的应用程序、石头剪子布游戏应用程序等等。

下面是PHP生成随机数的两个函数方法:

在网上看到一个非常有趣的PHP人民币金额数字转中文大写的函数,其实质就是数字转换成中文大写,测试了一下,非常有趣,随便输个数字,就可以将其大写打印出来,新手朋友们试一下吧,举一反三,还可以写好多有趣的PHP转换函数。PHP代码:


     
function cny($ns) {    
    static $cnums=array("零","壹","贰","叁","肆","伍","陆","柒",
"捌","玖"),    
        $cnyunits=array("圆","角","分"),    
        $grees=array("拾","佰","仟","万","拾","佰","仟","亿");
    list($ns1,$ns2)=explode(".",$ns,2);    
    $ns2=array_filter(array($ns2[1],$ns2[0]));    
    $ret=array_merge($ns2,array(implode("",_cny_map_unit(str_spl
it($ns
1),$grees)),""));    
    $ret=implode("",array_reverse(_cny_map_unit($ret,$cnyunits)));
    return str_replace(array_keys($cnums),$cnums,$ret);
}
function _cny_map_unit($list,$units) {    
    $ul=count($units);    
    $xs=array();    
    foreach (array_reverse($list) as $x) {
        $l=count($xs);    
        if ($x!="0" || !($l%4)) $n=($x=='0'?'':$x).($units[($l-1)
%$ul]);    
        else $n=is_numeric($xs[0][0])?$x:'';
        array_unshift($xs,$n);    
    }    
    return $xs;    
}   
?> 

使用方法:直接传递数字参数即可,下面的实例打印出来便是数字大写。输出:壹万贰仟壹佰贰拾壹圆

PHP代码



分享到:
PHP中的钩子是什么,怎么理解它?
细说php - http://www.xishuophp.com/ PHP 写插件 其中的HOOK 只是别人想的一个词语,术语而已 并无实际意义 在WINDOWS编程中 HOOK==钩子  是一种消息机制的一种 意思就是:蚊子叮了你一口,你的大脑神经接收到了,于是指挥肢体,去赶走还是拍死这个蚊子 这个大脑神经就是HOOK,系统接收用户操作,而HOOK则...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……