- 论坛徽章:
- 0
|
简繁转换怎么转的不对?
<?
$filename = "gb-big5.table";
$fp = fopen($filename, "rb" ;
$gb = fread($fp,filesize($filename));
$_gb_big5_= $gb;
fclose($fp);
/**
GB码转换成Big5码
*/
function gb2big5($str) {
global $_gb_big5_;
$leng = strlen($str)-1;
for($i = 0; $i<$leng; $i++){
$h = ord($str[$i]);
if($h>;=160){
$l = ord($str[$i+1]);
$gb=($h==161 && $l==64)?" " : substr($_gb_big5_, ($h-160)*510+($l-1)*2, 2);
$str[$i] = $gb[0];
$str[$i+1] = $gb[1];
$i++;
}
}
return $str;
}
$a = "擺";
echo "原简体 $a<br>;";
$a=gb2big5($a);
echo "转繁体 $a<br>;";
这个是简转 繁
a = "擺";
echo "原繁体 $a<br>;";
$a=big52gb($a);
echo "转简体 $a<br>;";
你的big52gb()不对,没有这个 |
|