コードをコピーします コードは次のとおりです:
//数字を漢字に変換します。たとえば、1210は千二百十に変換されます
$num = "842105580";//9桁
function del0($num ) //数値フィールドの前の 0 を削除します
{
return "".intval($num);
function n2c($x) //単一の数値を漢字に変換します
{
$arr_n = array("0","1","2","3","4","5","6","7","8","9","10" ");
return $arr_n[$x];
}
function num_r($abcd) //値(4桁)を読み取る
{
$arr= array();
$str = ""; //中国語を読み取る文字値
$flag = 0; // ビットがゼロかどうか
$flag_end = 1; // ビットが "ゼロ" で終わるかどうか
$size_r =
for($i=0; $i< ;$size_r; $i++)
{
$ arr[$i] = $abcd{$i};
$arrlen = count($arr); $j++)
{
$ch = n2c( $arr[$arrlen-1-$j]) //中国語の文字を後ろから前に変換します
echo ""
if($ch ==; "zero" && $flag == 0){ / /最初のゼロの場合
$flag = 1; //このビットはゼロです
$str = $ch.$str; //漢字の数値列を追加します
;
}elseif($ch == "zero" ){ //最初のゼロでない場合
Continue;
$flag = 0; //ビットがゼロではない
switch($j) {
case 0: $str = $ch; $flag_end = 0; //最初の桁(末尾)が「0」で終わらない
case 1: $str = $ch."十".$str; //2桁目
case 2: $str = $ch ."hundred".$str; //3桁目
case 3: $str = $ch."千".$str; 4桁目
}
}
if($flag_end == 1) //「ゼロ」で終わる場合
{
mb_internal_encoding("UTF-8")
$str = mb_substr($str, 0, mb_strlen( $str)-1); //「ゼロ」を削除します
}
return $str;
function num2ch($num) //全体の読み取り変換
{
$num_real = del0($num);//前の "0"
$numlen = strlen($num_real) ;
echo "numlen=".$numlen.""
if($numlen >= 9)//9 桁に達した場合は、"100" を読み取ります。 100 万" 桁
{
$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))."万"; ";
}elseif($numlen ;= 5) //「万」以上の場合
{
$wsbq = substr($num_real, 0, $numlen- 4);
$gsbq = substr($num_real, -4);
$a = num_r(del0($gsbq))."万"; "";
}elseif($numlen $gsbq = substr( $num_real, -$numlen); ($gsbq));
$c="";
$ch_num = $c.$b.$a;
$ch_num を返します。 //数字
echo num2ch($num); //漢字
echo ""
;
上記は、中国語文字コードの内容を含む、中国語文字コード PHP デジタルから中国語文字コードへのアルゴリズムを紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。