`

php数字转汉字的函数算法

阅读更多

php数字转汉字的函数

/*********************数字转汉字***********************/
function del0($num) //去掉数字段前面的0
{
    return "".intval($num);

}

function n2c($x) //单个数字变汉字

{
    $arr_n = array("零","一","二","三","四","五","六","七","八","九","十");
    return $arr_n[$x];
}

function num_r($abcd) //读取数值(4位)
{
    $arr= array();
    $str = ""; //读取后的汉字数值
    $flag = 0; //该位是否为零
    $flag_end = 1; //是否以"零"结尾
    $size_r = strlen($abcd);
    for($i=0; $i<$size_r; $i++)
    {
        $arr[$i] = $abcd{$i};
    }
    $arrlen = count($arr);
    for($j=0; $j<$arrlen; $j++)
    {
        $ch = n2c($arr[$arrlen-1-$j]); //从后向前转汉字
  		//echo $ch;
  		//echo "<br>";
        if($ch == "零" && $flag == 0){ //如果是第一个零
            $flag = 1; //该位为零
            $str = $ch.$str; //加入汉字数值字符串
            continue;
        }elseif($ch == "零"){ //如果不是第一个零了
            continue;
        }
        $flag = 0; //该位不是零
        switch($j)  {
            case 0: $str = $ch;    $flag_end = 0; break; //第一位(末尾),没有以"零"结尾
            case 1: $str = $ch."十".$str; break; //第二位
            case 2: $str = $ch."百".$str; break; //第三位
            case 3: $str = $ch."千".$str; break; //第四位
        }
    }
    if($flag_end == 1) //如果以"零"结尾
    {
        mb_internal_encoding("UTF-8");
        $str = mb_substr($str, 0, mb_strlen($str)-1); //把"零"去掉
    }
	if($arrlen == 2 && $arr[0] == 1){
		$str = substr($str,2);
	}
    return $str;
}

function num2ch($num) //整体读取转换
{
    $num_real = del0($num);//去掉前面的"0"
    $numlen = strlen($num_real);
 	//echo "numlen=".$numlen."<br>";
    if($numlen >= 9)//如果满九位,读取"亿"位
    {
        $y=substr($num_real, -9, 1);
  //echo $y;
        $wsbq = substr($num_real, -8, 4);
        $gsbq = substr($num_real, -4);
        $a = num_r(del0($gsbq));
        $b = num_r(del0($wsbq))."万";
        $c = num_r(del0($y))."亿";
    }elseif($numlen <= 8 && $numlen >= 5) //如果大于等于"万"
    {
        $wsbq = substr($num_real, 0, $numlen-4);
        $gsbq = substr($num_real, -4);
        $a = num_r(del0($gsbq));
        $b = num_r(del0($wsbq))."万";
  		$c="";
    }elseif($numlen <= 4) //如果小于等于"千"
    {
        $gsbq = substr( $num_real, -$numlen);
        $a = num_r(del0($gsbq));
  		$b="";
  		$c="";
    }
    $ch_num = $c.$b.$a;
    return $ch_num;
}
/******************数字转汉字结束********************/	
 
分享到:
评论

相关推荐

    php数字转汉字代码(算法)

    这个任务可以通过编写自定义函数来实现,就像标题所示的"php数字转汉字代码(算法)"。以下是一个详细的解释和分析这个算法的过程: 首先,我们看到有两个主要的辅助函数:`del0()` 和 `n2c()`。 `del0($num)` 函数...

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例 PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例 curl获取远程文件内容 GD显示中文 PHP GIF动画生成类 PHP HTML转UBB函数 PHP ...

    php 把数字转换成汉字的代码

    一个好的数字转汉字函数应该具有通用性和可配置性。这意味着它不仅可以处理特定范围内的数字,还能根据用户的配置显示不同的输出格式(如金额模式或普通数字模式),并且能够处理非标准的数字,如包含小数的情况。 ...

    汉字全拼PHP函数代码

    数组中的每个元素都是一个包含两个值的子数组,第一个值是汉字的拼音首字母,第二个值是一个负数,这个数字在程序中起到某种索引的作用,但具体功能需要结合整个函数的执行逻辑来理解。 函数的核心部分在于遍历输入...

    php中文转换成拼音api

    `ChinesePinyin.class.php` 文件很可能是一个PHP类,封装了中文转拼音的算法和功能。此类通常会提供以下方法: 1. **初始化**:构造函数可能接受配置参数,如是否保留声调、是否转化为简写形式等。 2. **单个汉字转...

    关于php汉字转拼音.rar

    标题提到的“关于php汉字转拼音.rar”压缩包,显然包含了一些用于实现这一功能的资源。在这个压缩包中,有两个文件:pinyin.js和py.php,分别代表了JavaScript和PHP两个语言环境下处理汉字转拼音的方法。 1. pinyin...

    php汉字批量转拼音

    综上所述,"php汉字批量转拼音"涉及的是PHP编程中处理汉字与拼音之间的转换技术,包括使用内置函数、第三方库、API接口以及自定义算法等多种实现方式。这个主题对于进行中文信息处理的开发者来说至关重要,尤其在...

    php常用函数集合

    ### PHP常用函数集合详解 #### 一、字符串处理函数 在PHP编程中,字符串处理是非常常见且重要的操作。本文档将详细介绍PHP中一系列常用的字符串处理函数,并解释它们的功能及应用场景。 ##### 1. `addcslashes` ...

    PHP实例开发源码-php 汉字转拼音工具.zip

    在PHP编程中,实现汉字转拼音的功能通常涉及到中文字符编码的处理、拼音库的调用或自定义算法的应用。 首先,了解汉字转拼音的基本原理。汉字转拼音是将中文字符转换为其对应的汉语拼音,这在处理大量中文数据时...

    易语言PHP哈希函数

    在IT领域,哈希函数是一种将任意长度的输入(也称为预映射)转换为固定长度的输出的算法。这个输出通常称为哈希值或散列。哈希函数在多种应用中发挥着关键作用,包括数据索引、密码学、数据库和缓存等。在PHP中,有...

    中文转拼音的PHP代码

    PHP中没有内置的汉字转拼音函数,因此我们需要借助外部库或者自己编写算法来完成这个任务。在这个项目中,`ChineseWords-master`很可能包含了一个这样的库,它可能采用了以下几种策略: 1. **字典法**:利用预定义...

    PHP汉字转拼音库----

    总的来说,"PHP汉字转拼音库"是PHP开发者处理中文字符时的重要工具,通过它,我们可以方便地将汉字转换为拼音,从而拓展和优化各种功能,提高用户体验。学习并掌握这些库的使用,对于提升PHP开发者的技能水平和项目...

    最好的汉字转换拼音utf-8 php版 权威

    在PHP中,常见的实现方法是使用开源库,如Pinyin4PHP或SimpPinyin等,这些库通常会基于开源的中文词典数据,通过一定的算法将汉字转换为对应的拼音。转换过程可能包括分词、词语识别、多音字处理等复杂步骤,以确保...

    Function_GetPinyin.rar_GetPiny_getpinyin_getpinyin函数_php GetPiny

    `getpinyin`函数通常是一个自定义的PHP函数,其工作原理是基于拼音库,如`php_getpinyin`,该库可能包含了对汉字到拼音转换的算法实现。这个库可能包含了一些中文字符集的映射,或者利用了开源的汉字拼音数据库,...

    PHP将汉字转换拼音

    当我们需要处理汉字并将其转换为拼音时,PHP提供了一些库和函数来帮助我们完成这个任务。这个场景在中文网站的SEO优化、搜索引擎友好接口、拼音搜索等功能中非常常见。 首先,我们需要理解汉字转换拼音的基本概念。...

    php简繁互转插件

    3. 在需要使用简繁互转功能的PHP代码中,引入并调用插件的函数或类。 4. 使用提供的API,如`convert_to_simplified`(简转繁)和`convert_to_traditional`(繁转简),传入需要转换的文本进行操作。 在处理大量文本...

    php汉字转拼音

    "php汉字转拼音"的实现主要涉及到中文字符编码的理解、拼音库的使用以及字符串处理技巧。接下来,我们将深入探讨这个主题。 首先,我们要知道汉字是由Unicode编码表示的,而在PHP中,处理汉字通常需要了解UTF-8编码...

    中文转拼音(简体&繁体)

    首先,我们来看`chinesetopinyin.php`文件,这可能是一个实现了简体中文转拼音功能的PHP类或函数库。在PHP中,实现简体中文转拼音通常依赖于特定的库,如`pinyin4php`或者自定义的算法。这些库会根据Unicode编码对应...

Global site tag (gtag.js) - Google Analytics