在线的朋友来拿分了,帮我测试计数器 不错不错,隐形围棋.. -,-你的记数器是那个"六千四百三十二"?怎么做成中文的?怎么计算的?把代码share一下让我look look ? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 现在是六千四百三十三了,谢谢 foolfish(呆鱼), 马上给分.数字翻中文是自己一个偷工减料的代码, 好像超过200亿就不灵了 :)function NumberToChinese($num){ $DanWei=array("","十","百","千"); $Wan="万"; $Yi="亿"; $Fu="负"; $Liang="两"; $ShuZi=array("零","一","二","三","四","五","六","七","八","九"); //print("dan wei [3]=$DanWei[3]"); $strres=""; if($num==0)return $ShuZi[0]; //integer i,j,n,count; $n=$num<0 ? - $num :$num; $count=(integer)log10($n)+1; //print("count=".$count);// for($i=1;;$i++)// {// if((integer)($n/pow(10,$i))==0)// {// $count = $i;// break;// }// } //TRACE("count= %d \n",count); //$have0 ; //$Enable0 ; $Enable0= false; $have0= false; if($count>=9) { if(GetNumber(n,9+3)==0 && 9+3<$count) { $Enable0=true; $have0=true; } for($j=3;$j>=0;$j--) { if(GetNumber($n,9+$j)!=0) { if($Enable0&&$have0) { $strres=$strres.$ShuZi[0]; } if(9+$j!=10|GetNumber($n,9+$j)!=1||!$strres=="") { if(GetNumber($n,9+$j)==2&&$strres==""&&9+$j!=10) $strres=$strres.$Liang; else $strres=$strres.$ShuZi[GetNumber($n,9+$j)]; } $strres=$strres.$DanWei[$j]; $have0=false; $Enable0=true; } else { if(!$have0) { $have0=true; } } } $strres=$strres.$Yi; } $passwan=true; if($count>=5) { //Enable0= FALSE; //have0= FALSE; if(GetNumber($n,1+7)==0 && 1+7< $count) { $Enable0=true; $have0=true; } for($j=7;$j>=4;$j--) { if(GetNumber($n,1+$j)!=0) { $passwan=false; if($Enable0&&$have0) { $strres=$strres.$ShuZi[0]; } if(1+$j!=6||GetNumber($n,1+$j)!=1||!$strres=="") { if(GetNumber($n,1+$j)==2&&$strres==""&&1+$j!=6) $strres=$strres.$Liang; else $strres=$strres.$ShuZi[GetNumber($n,1+$j)]; } $strres=$strres.$DanWei[$j-4]; $have0=false; $Enable0=true; } else { if(!$have0) { $have0=true; } } } if(!$passwan)$strres=$strres.$Wan; } //have0= FALSE; if(GetNumber($n,1+3)==0 && 1+3< $count) { $Enable0=true; $have0=true; } for($j=3;$j>=0;$j--) { //print("n=".$n." j=".$j." ->".(GetNumber($n,1+$j)."\n")); if(GetNumber($n,1+$j)!=0) { if($Enable0&&$have0) { $strres=$strres.$ShuZi[0]; } if(1+$j!=2||GetNumber($n,1+$j)!=1||$strres!="") { if(GetNumber($n,1+$j)==2&&$strres==""&&1+$j>2) $strres=$strres.$Liang; else $strres=$strres.$ShuZi[GetNumber($n,1+$j)]; } //print("$strres=$strres.$DanWei[$j]"); $strres=$strres.$DanWei[$j]; $have0=false; $Enable0=true; } else { if(!$have0) { $have0=true; } } }if( $num<0 )$strres=$Fu.$strres;return $strres;} 收到谢谢我copy回去研究一下. 求这段代码的详解 PHP搞个echo XML都折磨疯哥了 mysql的内存表性能怎么样,在线等 php5.2.13+apache1.6.1的安装配置问题 php如何实现网站与discuz论坛同步登陆 一个初级问题,求大家指点~ php如何得到http://url/dir/的内容,类似opendir zend client 一定需要JDK才能运行吗? 怎么用上传php发送带附件的e-mai.??? 如何获取网页里面的表格? 如何用PHP实现在线视频播放? Fatal error: Call to undefined function: strlen
数字翻中文是自己一个偷工减料的代码, 好像超过200亿就不灵了 :)
function NumberToChinese($num)
{
$DanWei=array("","十","百","千");
$Wan="万";
$Yi="亿";
$Fu="负";
$Liang="两";
$ShuZi=array("零","一","二","三","四","五","六","七","八","九");
//print("dan wei [3]=$DanWei[3]");
$strres=""; if($num==0)return $ShuZi[0]; //integer i,j,n,count;
$n=$num<0 ? - $num :$num;
$count=(integer)log10($n)+1;
//print("count=".$count);
// for($i=1;;$i++)
// {
// if((integer)($n/pow(10,$i))==0)
// {
// $count = $i;
// break;
// }
// }
//TRACE("count= %d \n",count); //$have0 ;
//$Enable0 ;
$Enable0= false;
$have0= false;
if($count>=9)
{
if(GetNumber(n,9+3)==0 && 9+3<$count)
{
$Enable0=true;
$have0=true;
}
for($j=3;$j>=0;$j--)
{
if(GetNumber($n,9+$j)!=0)
{
if($Enable0&&$have0)
{
$strres=$strres.$ShuZi[0];
}
if(9+$j!=10|GetNumber($n,9+$j)!=1||!$strres=="")
{
if(GetNumber($n,9+$j)==2&&$strres==""&&9+$j!=10)
$strres=$strres.$Liang;
else
$strres=$strres.$ShuZi[GetNumber($n,9+$j)];
}
$strres=$strres.$DanWei[$j];
$have0=false;
$Enable0=true;
}
else
{
if(!$have0)
{
$have0=true;
}
}
}
$strres=$strres.$Yi;
}
$passwan=true;
if($count>=5)
{
//Enable0= FALSE;
//have0= FALSE;
if(GetNumber($n,1+7)==0 && 1+7< $count)
{
$Enable0=true;
$have0=true;
}
for($j=7;$j>=4;$j--)
{
if(GetNumber($n,1+$j)!=0)
{
$passwan=false;
if($Enable0&&$have0)
{
$strres=$strres.$ShuZi[0];
}
if(1+$j!=6||GetNumber($n,1+$j)!=1||!$strres=="")
{
if(GetNumber($n,1+$j)==2&&$strres==""&&1+$j!=6)
$strres=$strres.$Liang;
else
$strres=$strres.$ShuZi[GetNumber($n,1+$j)];
}
$strres=$strres.$DanWei[$j-4];
$have0=false;
$Enable0=true;
}
else
{
if(!$have0)
{
$have0=true;
}
}
}
if(!$passwan)$strres=$strres.$Wan;
}
//have0= FALSE;
if(GetNumber($n,1+3)==0 && 1+3< $count)
{
$Enable0=true;
$have0=true;
}
for($j=3;$j>=0;$j--)
{
//print("n=".$n." j=".$j." ->".(GetNumber($n,1+$j)."\n"));
if(GetNumber($n,1+$j)!=0)
{
if($Enable0&&$have0)
{
$strres=$strres.$ShuZi[0];
}
if(1+$j!=2||GetNumber($n,1+$j)!=1||$strres!="")
{
if(GetNumber($n,1+$j)==2&&$strres==""&&1+$j>2)
$strres=$strres.$Liang;
else
$strres=$strres.$ShuZi[GetNumber($n,1+$j)];
}
//print("$strres=$strres.$DanWei[$j]");
$strres=$strres.$DanWei[$j];
$have0=false;
$Enable0=true;
}
else
{
if(!$have0)
{
$have0=true;
}
}
}
if( $num<0 )$strres=$Fu.$strres;
return $strres;
}
谢谢我copy回去研究一下.