Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Funktionsalgorithmus zum Konvertieren von Zahlen in chinesische Schriftzeichen

PHP-Funktionsalgorithmus zum Konvertieren von Zahlen in chinesische Schriftzeichen

巴扎黑
巴扎黑Original
2016-11-24 13:52:041085Durchsuche

/***********************Zahlen in chinesische Schriftzeichen umwandeln **********************/

function del0($num) //Entferne die 0 vor dem Zahlenfeld

{

return "" .intval( $num);


}


function n2c($x) //Eine einzelne Zahl ändert sich zu einem chinesischen Schriftzeichen


{

$arr_n = array("null", "eins", "zwei", "drei", "vier" ,„fünf“, „sechs“, „sieben“, „acht“, „neun“, „zehn“);

return $arr_n[$x];

}


function num_r($abcd) //Wert lesen (4 Ziffern)

{

$arr= array();

$str = " "; //Der gelesene chinesische Zeichenwert

$flag = 0; //Ob das Bit Null ist

$flag_end = 1; //Ob es endet mit „Null“

$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]); //Konvertieren Sie chinesische Zeichen von hinten nach vorne

//echo $ch;

//echo "
";

if($ch == "zero" && $flag == 0){ //Wenn es die A-Null ist

                                                                                                                                          

}elseif($ch == "zero"){ //Wenn es nicht die erste Null ist

= 0; //Dieses Bit ist nicht Null

switch($j) {

case 0: $str = $ch; $flag_end = 0; das Ende), endet nicht mit „Null“

Fall 1: $str = $ch.“十“.$str; //Die zweite Ziffer

Fall 2: $ str = $ ch."hundred".$str; //Die dritte Ziffer

case 3: $str = $ch."千".$str; >

}

}

if($flag_end == 1) //Wenn es mit „Null“ endet

{

mb_internal_encoding( "UTF-8 ");

$str = mb_substr($str, 0, mb_strlen($str)-1); //Entferne „Null“

}

if( $arrlen == 2 && $arr[0] == 1){

$str = substr($str,2);

}

return $str;

}

function num2ch($num) //Gesamtlesekonvertierung

{

$ num_real = del0($num);//Entferne die vorangehende „0“

$numlen = strlen($num_real);

//echo "numlen=".$numlen."< ;br> ;";

if($numlen >= 9)//Wenn es aus neun Ziffern besteht, lesen Sie die „Milliarde“ Ziffern

{

$ 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))."Billion";

}elseif($numlen <= 8 && $numlen >= 5) // Wenn größer oder gleich „zehntausend“ „

{

$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) //Wenn kleiner oder gleich „tausend“

{

$a = num_r(del0($gsbq));

$b="";

$c="";

}

$ch_num = $c.$b.$a;

return $ch_num;

}

/******************Ende der Konvertierung von Zahlen in chinesische Schriftzeichen**************************/

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn