PHP人民币金额数字转中文大写的函数代码


Posted in PHP onFebruary 27, 2013

在网上看到一个非常有趣的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_split($ns1),$grees)),"")); 
    $ret=implode("",array_reverse(_cny_map_unit($ret,$cnyunits))); 
    return str_replace(array_keys($cnums),$cnums,$ret); 
}

PHP人民币金额数字转中文大写的函数代码

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
 echo cny('12121');
?>
PHP 相关文章推荐
javascript 小型动画组件与实现代码
Jun 02 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
Aug 09 PHP
PHP spl_autoload_register实现自动加载研究
Dec 06 PHP
php截取后台登陆密码的代码
May 05 PHP
Apache服务器无法使用的解决方法
May 08 PHP
PHP实现今天是星期几的几种写法
Sep 26 PHP
简单谈谈PHP中strlen 函数
Feb 27 PHP
基于PHP实现数据分页显示功能
May 26 PHP
PHP数组实例详解
Jun 26 PHP
Yii框架模拟组件调用注入示例
Nov 11 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
Nov 24 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
Mar 26 PHP
PHP和.net中des加解密的实现方法
Feb 27 #PHP
php和js如何通过json互相传递数据相关问题探讨
Feb 26 #PHP
php数组的概述及分类与声明代码演示
Feb 26 #PHP
浅谈apache和nginx的rewrite的区别
Feb 22 #PHP
php并发对MYSQL造成压力的解决方法
Feb 21 #PHP
php连接mssql数据库的几种方法
Feb 21 #PHP
PHP递归调用的小技巧讲解
Feb 19 #PHP
You might like
php preg_filter执行一个正则表达式搜索和替换
2012/02/27 PHP
PHPMailer使用教程(PHPMailer发送邮件实例分析)
2012/12/06 PHP
PHP统计二维数组元素个数的方法
2013/11/12 PHP
ThinkPHP函数详解之M方法和R方法
2015/09/10 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
2016/09/13 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
laravel实现登录时监听事件,添加登录用户的记录方法
2019/09/30 PHP
javascript 子窗体父窗体相互传值方法
2010/05/31 Javascript
js 金额文本框实现代码
2012/02/14 Javascript
jquery文本框中的事件应用以输入邮箱为例
2014/05/06 Javascript
JS基于面向对象实现的拖拽库实例
2015/09/24 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)
2016/05/20 Javascript
javascript 操作cookies详解及实例
2017/02/22 Javascript
微信小程序 自定义消息提示框
2017/08/06 Javascript
完美解决axios在ie下的兼容性问题
2018/03/05 Javascript
Layui带搜索的下拉框的使用以及动态数据绑定方法
2019/09/28 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
JS可断点续传文件上传实现代码解析
2020/07/30 Javascript
EXTJS7实现点击拖拉选择文本
2020/12/17 Javascript
python实现SMTP邮件发送功能
2020/06/16 Python
Python_LDA实现方法详解
2017/10/25 Python
Tensorflow不支持AVX2指令集的解决方法
2020/02/03 Python
python Pexpect模块的使用
2020/12/25 Python
Scrapy实现模拟登录的示例代码
2021/02/21 Python
2019年Java面试必问之经典试题
2012/09/12 面试题
函授本科自我鉴定
2013/11/03 职场文书
党的群众路线教育实践活动总结报告
2014/07/03 职场文书
民事诉讼代理词
2015/05/25 职场文书
诚信考试主题班会
2015/08/17 职场文书
严以律己专题学习研讨会发言材料
2015/11/09 职场文书
Html分层的box-shadow效果的示例代码
2021/03/30 HTML / CSS
电频谱管理的原则是什么
2022/02/18 无线电
NodeJs使用webpack打包项目的方法详解
2022/02/28 NodeJs
nginx之queue的具体使用
2022/06/28 Servers