数字金额转汉字金额

早上公交上总想这个问题,终于写出来了,不知道有错误没


 1 $chinese = array("零","一","二","三","四","五","六","七","八","九");
2 $str = 140032002005;
3 $arr = array();
4
5 $num = floor(strlen($str)/4);
6 $ss = substr($str, 0, strlen($str)-$num*4);
7 $i = 0;
8 while($num>0){
9 $arr[] = substr($str, -4-$i*4,4);
10 $num--;
11 $i++;
12 }
13 if($ss != "") $arr[] = $ss;
14 $strr = array();
15 foreach ($arr as $k => $v) {
16 $strrr = "";
17 for ($j=strlen($v);$j>0;$j--) {
18 switch ($j) {
19 case 4:
20 $strrr .= $v[strlen($v)-$j] != 0 ? $chinese[$v[strlen($v)-$j]]."千" : $chinese[0];
21 break;
22 case 3:
23 $strrr .= $v[strlen($v)-$j] != 0 ? $chinese[$v[strlen($v)-$j]]."百" : ($v[strlen($v)-$j+1]==0 ? "" : $chinese[0]);
24 break;
25 case 2:
26 $strrr .= $v[strlen($v)-$j] != 0 ? $chinese[$v[strlen($v)-$j]]."十" : ($v[strlen($v)-$j+1]==0 ? "" : $chinese[0]);
27 break;
28 case 1:
29 $strrr .= $v[strlen($v)-$j] != 0 ? $chinese[$v[strlen($v)-$j]] : "";
30 break;
31 }
32 }
33 if($k%2 == 1) $strrr = $strrr."万";
34 if($k%2 == 0 && $k!=0) $strrr = $strrr."亿";
35 $strr[] = $strrr;
36 }
37 header("Content-type: text/html; charset=utf-8");//浏览器改不了编码了
38 krsort($strr);
39 var_dump(implode("", $strr));exit;

数字金额转汉字金额,布布扣,bubuko.com

时间: 2024-10-20 21:02:53

数字金额转汉字金额的相关文章

将金额数字转换为大写汉字的js函数

1 //将金额数字转换为大写汉字的函数 2 function convertCurrency(money) { 3 //汉字的数字 4 var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'); 5 //基本单位 6 var cnIntRadice = new Array('', '拾', '佰', '仟'); 7 //对应整数部分扩展单位 8 var cnIntUnits = new Array('', '

C#把金额转换为汉字表达式

/* 创建者:菜刀居士的博客 * 创建日期: 2014年09月04号 * 功能:Money类型转换 * */ namespace Net.String.ConsoleApplication { using System; using System.Collections.Generic; public class MoneyHelper { public static string[] chineseDigits = new string[] { "零", "壹",

数字转中文,大写,金额

最近,又发现了另外一种数字转中文,大写,金额的方法,觉得会比之前找到的跟合适一点:npm安装包地址:https://npm.taobao.org/package/nzh(在这里,会有更加详细的使用介绍.而我就只是测了其中一种......) 简介:Nzh适用于开发过程中需要将数字转换为中文的场景 以字符串的方式转换,解决超大数及浮点数等问题,请自行对原数据进行四舍五入等操作. 1.首先在项目中安装依赖包:npm install nzh 2.其实这是自己在做小测试的时候,使用nzh的,在安装完依赖包

Sql Server 数字金额转中文金额 函数

在做一些订单金额.合同金额转换的时候,经常会遇到数字转成中文的情况,所以整理了一个数字转中文的函数: /* 说明:数字金额转中文金额 示例:187.4 转成 壹佰捌拾柒圆肆角整 */ CREATE FUNCTION [dbo].[CNumeric](@num numeric(14,2)) returns nvarchar(100) BEGIN Declare @n_data nvarchar(20),@c_data nvarchar(100),@n_str nvarchar(10),@i int

#001#人人笔试题 输入数字转化为汉字

Java实现 1 package test001; 2 import java.util.Scanner; 3 4 //输入530014 输出五十三万零一十四 5 //int 型数据最大值为 21 4748 3647 二十一亿 四千七百四十八万 三千六百四十七 6 //int 型数据最小值为-2147483647 7 public class file1 { 8 static String[] numArray={"零","一","二",&quo

Java实现汉字金额转化(转自微信)

package com.xfonlineclass; import java.text.DecimalFormat; import java.util.Scanner; /** * 金额转换 * * 小峰在线 * http://www.xfonlineclass.com */ public class ConvertMoney { // 大写数字 private final static String[] STR_NUMBER = { "零", "壹", "

PHP实现数字金额转中文金额

 解决发票系统中,发票单上需要填写中文金额的问题:  function ToChineseNum($num) {         $zh_num = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];         $zh_unit = ['分', '角', '元', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿', '拾', '佰', '仟'];         if (!is_numeric(str_repl

ios中数字的格式化(金额千分位格式化显示)

通过NSNumberFormatter,设置NSNumber输出的格式 NSNumberFormatter *formatter = [[NSNumberFormatteralloc]init]; formatter.numberStyle =NSNumberFormatterDecimalStyle; NSString *newAmount = [formatterstringFromNumber:[NSNumbernumberWithint:123456789]]; (注意传入参数的数据长度

数字转换成英文 金额转成英文大写

/****** Object: UserDefinedFunction [dbo].[NumberToStr] Script Date: 03/20/2017 23:38:14 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --创建函数 ALTER FUNCTION [dbo].[NumberToStr] ( @ad_input decimal(38,17) ) RETURNS nvarchar(max) AS BEGIN de