PHP 实现人民币小写转换成大写的方法及大小写转换函数


Posted in PHP onNovember 17, 2017

下面一段代码给大家分享php实现人民币大小写转换的方法,具体代码如下所示:

<?php 
header("charset=utf-8;"); 
function numTrmb($num){ 
 $d = array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"); 
 $e = array('元', '拾', '佰', '仟', '万', '拾万', '佰万', '仟万', '亿', '拾亿', '佰亿', '仟亿'); 
 $p = array('分', '角'); 
 $zheng = "整"; 
 $final = array(); 
 $inwan = 0;//是否有万 
 $inyi = 0;//是否有亿 
 $len = 0;//小数点后的长度 
 $y = 0; 
 $num = round($num, 2);//精确到分 
 if(strlen($num) > 15){ 
 return "金额太大"; 
 die(); 
 } 
 if($c = strpos($num, '.')){//有小数点,$c为小数点前有几位 
 $len=strlen($num)-strpos($num,'.')-1;//小数点后有几位数 
 }else{//无小数点 
 $c = strlen($num); 
 $zheng = '整'; 
 } 
 for($i = 0; $i < $c; $i++){ 
 $bit_num = substr($num, $i, 1); 
 if ($bit_num != 0 || substr($num, $i + 1, 1) != 0) { 
  @$low = $low . $d[$bit_num]; 
 } 
 if ($bit_num || $i == $c - 1) { 
  @$low = $low . $e[$c - $i - 1]; 
 } 
 } 
 if($len!=1){ 
 for ($j = $len; $j >= 1; $j--) { 
  $point_num = substr($num, strlen($num) - $j, 1); 
  @$low = $low . $d[$point_num] . $p[$j - 1]; 
 } 
 }else{ 
 $point_num = substr($num, strlen($num) - $len, 1); 
 $low=$low.$d[$point_num].$p[$len]; 
 } 
 $chinses = str_split($low, 3);//字符串转化为数组 
 for ($x = count($chinses) - 1; $x >= 0; $x--) { 
 if ($inwan == 0 && $chinses[$x] == $e[4]) {//过滤重复的万 
  $final[$y++] = $chinses[$x]; 
  $inwan = 1; 
 } 
 if ($inyi == 0 && $chinses[$x] == $e[8]) {//过滤重复的亿 
  $final[$y++] = $chinses[$x]; 
  $inyi = 1; 
  $inwan = 0; 
 } 
 if ($chinses[$x] != $e[4] && $chinses[$x] !== $e[8]) { 
  $final[$y++] = $chinses[$x]; 
 } 
 } 
 $newstr = (array_reverse($final)); 
 $nstr = join($newstr); 
 if((substr($num, -2, 1) == '0') && (substr($num, -1) <> 0)){ 
 $nstr = substr($nstr, 0, (strlen($nstr) -6)).'零'. substr($nstr, -6, 6); 
 } 
 $nstr=(strpos($nstr,'零角')) ? substr_replace($nstr,"",strpos($nstr,'零角'),6) : $nstr; 
 return $nstr = (substr($nstr,-3,3)=='元') ? $nstr . $zheng : $nstr; 
} 
echo numTrmb(965002.65);

效果图:

PHP 实现人民币小写转换成大写的方法及大小写转换函数

下面看下php大小写转换函数

1.将字符串转换成小写

   strtolower(): 该函数将传入的字符串参数所有的字符都转换成小写,并以小定形式放回这个字符串.

例:

<?php
 $str = "I want To FLY";
 $str = strtolower($str);
 echo $str;
?>

输出结果:

i want to fly

2.将字符转成大写

   strtoupper(): 该函数的作用同strtolower函数相反,是将传入的字符参数的字符全部转换成大

写,并以大写的形式返回这个字符串.用法同strtolowe()一样.

3.将字符串首字符转换成大写

    usfilst(): 该函数的作用是将字符串的第一个字符改成大写,该函数返回首字符大写的字符串.

用法同strtolowe()一样.

4.将字符串每个单词的首字符转换成大写

   ucwords(): 该函数将传入的字符串的每个单词的首字符变成大写.如"hello world",经过该函数

处理后,将返回"Hello Word".用法同strtolowe()一样.

总结

以上所述是小编给大家介绍的PHP 实现人民币小写转换成大写的方法及大小写转换函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP中删除变量时unset()和null的区别分析
Jan 27 PHP
PHP设计模式之责任链模式的深入解析
Jun 13 PHP
php判断页面是否是微信打开的示例(微信打开网页)
Apr 25 PHP
php switch语句多个值匹配同一代码块应用示例
Jul 29 PHP
PHP的APC模块实现上传进度条
Oct 27 PHP
YII使用url组件美化管理的方法
Dec 28 PHP
PHP面向对象程序设计之对象生成方法详解
Dec 02 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
Jun 09 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 PHP
Laravel框架运行出错提示RuntimeException No application encryption key has been specified.解决方法
Apr 02 PHP
详解PHP中的8个魔术常量
Jul 06 PHP
laravel7学习之无限级分类的最新实现方法
Sep 30 PHP
关于php支持的协议与封装协议总结(推荐)
Nov 17 #PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
Nov 16 #PHP
PHP实现链式操作的三种方法详解
Nov 16 #PHP
thinkphp5.0自定义验证规则使用方法
Nov 16 #PHP
PHP实现验证码校验功能
Nov 16 #PHP
学习thinkphp5.0验证类使用方法
Nov 16 #PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 #PHP
You might like
用PHP写的MySQL数据库用户认证系统代码
2007/03/22 PHP
php 短链接算法收集与分析
2011/12/30 PHP
纯PHP代码实现支付宝批量付款
2015/12/24 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
[原创]提供复制本站内容时出现,该文章转自脚本之家等字样的js代码
2007/03/27 Javascript
javascript设计模式 接口介绍
2012/07/24 Javascript
jquery创建表格(自动增加表格)代码分享
2013/12/25 Javascript
Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
2014/09/01 Javascript
Javascript中arguments和arguments.callee的区别浅析
2015/04/24 Javascript
jQuery插件学习教程之SlidesJs轮播+Validation验证
2016/07/12 Javascript
js计算系统当前日期是星期几的方法
2016/07/14 Javascript
jQuery第一次运行页面默认触发点击事件的实例
2018/01/10 jQuery
vue项目前端知识点整理【收藏】
2019/05/13 Javascript
js实现贪吃蛇游戏 canvas绘制地图
2020/09/09 Javascript
详解Vue中Axios封装API接口的思路及方法
2020/10/10 Javascript
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)
2017/12/20 Python
Python OpenCV处理图像之图像直方图和反向投影
2018/07/10 Python
Python os.access()用法实例
2019/02/18 Python
python打包成so文件过程解析
2019/09/28 Python
python中从for循环延申到推导式的具体使用
2019/11/29 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
2019/12/25 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
Python任务调度利器之APScheduler详解
2020/04/02 Python
详解PyQt5中textBrowser显示print语句输出的简单方法
2020/08/07 Python
Python实现对word文档添加密码去除密码的示例代码
2020/12/29 Python
html5页面结构_动力节点Java学院整理
2017/07/10 HTML / CSS
美国著名的婴儿学步鞋老品牌:Robeez
2016/08/20 全球购物
英国太阳镜品牌:Taylor Morris Eyewear
2018/04/18 全球购物
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
英国领先的在线旅游和休闲零售商:lastminute.com
2019/01/23 全球购物
三月学雷锋活动总结
2014/06/26 职场文书
员工教育培训协议书
2014/09/27 职场文书
MySQL 数据库范式化设计理论
2022/04/22 MySQL
MySQL8.0 Undo Tablespace管理详解
2022/06/16 MySQL