ホームページ  >  記事  >  バックエンド開発  >  PHP番号から漢字コードへの変換(アルゴリズム)_PHPチュートリアル

PHP番号から漢字コードへの変換(アルゴリズム)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:24:13964ブラウズ

コードをコピーします コードは次のとおりです:

//数字を漢字に変換します。たとえば、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 ""

;



http://www.bkjia.com/PHPjc/324379.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/324379.html

技術記事

次のようにコードをコピーします。 //数値を漢字に変換します。たとえば、1210 は 1210 に変換されます。 $num = "842105580" //9 桁の関数 del0($num) //0 を削除します。数字フィールドの前で { 戻る...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。