精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● PHP>>实现简/繁转化的方法

主题:实现简/繁转化的方法
发信人: yxboy007(阳溪男孩)
整理人: dalasthunder(2003-09-21 01:51:31), 站内信件
function gb2big5($Text){  
   $fp = fopen("gb-big5.table", "r");  
   $max=strlen($Text)-1;  
   for($i=0;$i<$max;$i++){
$h=ord($Text[$i]);
if($h>=160){  
$l=ord($Text[$i+1]);  
if($h==161 && $l==64){  
   $gb=" "; 
}else{  
   fseek($fp,($h-160)*510+($l-1)*2);  
   $gb=fread($fp,2);  
}  
      $Text[$i]=$gb[0];  
      $Text[$i+1]=$gb[1]; $i++;  
   }  

fclose($fp);  
return $Text; 
}
function abc($Text,$lg){
  if($lg=="big5"){
     $a=gb2big5($Text);
     return($a);
  }else{
     return($Text);
  }
}
用上面这两个函数就可以实现了,完全没有必要作两份的,一份就行了,举例如下
<html><head><title>简繁同体</title>
<meta http-equiv="Content-Type" content="text/html; charset=<? echo $type ?>">
</head><body>
<?php
$string="人活着就是为等死,让黄土来掩埋你,让棺材来收藏你,让蛀虫来收拾你";
echo abc("$string",$type);
?>
</body></html>

注:gb-big5.table到下面这个地址下载:
http://www.znkb.com/gb-big5.table

[关闭][返回]