CSDN博客

img WapWeb

PHP中繁体中文转换成简体中文

发表于2004/6/29 13:42:00  2634人阅读

分类: PHP程序设计技术点滴!

由于是拷贝的别人数据库中的东西,是繁体。有很多好东西不舍得放掉怎么把它转换一下啊。各位救命啊。  
---------------------------------------------------------------  
 
<?    

function  isbig5($code)    
{    
if  (strlen($code)>=2)    
{    
$code=strtok($code,"");    
 
if  (ord($code[0])  <  161)    
{    
return  (0);    
}    
else    
{    
if  (((ord($code[1])  >=  64)&&(ord($code[1])  <=  126))  |  |((ord($code[1])  >=  161)&&(ord($code[1])  <=  254)))    
{    
return  (1);    
}    
else    
{    
return  (0);    
}    
}    
}    
else    
{    
return  (0);    
}    
}    
 
function  big5offset($code)    
{    
if  (strlen($code)  >=  2)    
{    
$code=strtok($code,"");    
if  ((ord($code[1])  >=  64)&&(ord($code[1])  <=  126))    
{    
return  ((ord($code[0])  -  161)  *  157  +  (ord($code[1])  -  64));    
}    
if  ((ord($code[1])  >=  161)&&(ord($code[1])  <=  254))    
{    
return  ((ord($code[0])  -  161)  *  157  +  63  +  (ord($code[1])  -  161));    
}    
}    
return  (-1);    
}    
 
function  wordtostring($code)    
{    
return  (chr(hexdec(substr($code,0,2))).chr(hexdec(substr($code,2,2))));    
}    
 
function  big5togb($code)    
{    
include  "data_big5.php";    
$output="";    
$length=strlen($code);    
$code=strtok($code,"");    
$idx=0;    
while  ($idx  <  $length)    
{    
$tmpStr=$code[$idx].$code[$idx+1];    
 
if  (isbig5($tmpStr))    
{    
$offset=big5offset($tmpStr);    
if  (($offset  >=  0)  |  |($offset  <=  14757))    
{    
$output.=wordtostring($big5order[$offset]);    
$idx++;    
}    
else    
{    
$output.=  $code[$idx];    
}    
}    
else    
{    
$output.=  $code[$idx];    
}    
$idx++;    
}    
return  ($output);    
}    
?>    
 
我们学校的网站和香港的一个交换数据库,遇到了类似的问题,上面是我写的一个函数。写的时候是参考了函数手册完成的,function  big5togb($code)  是主函数。  
0 0

相关博文

我的热门文章

img
取 消
img