见过把gb2312转换为utf-8的文章,原理应该是一样的,去其它PHP技术站点搜一搜吧。

解决方案 »

  1.   

    去下载gb和big5的对应表
    gb-big5.table
    big5-gb.table
    到处都有。。转换函数:<?
    //hessian <[email protected]> 推荐发布在 ctohome.com
    // gb_big5("需要等待转换的文字","等待转换文字的语言种类")
    function gb_big5($Text,$Source_Language="gb"){
    switch ($Source_Language) {
        case "gb":
    $fp = fopen("gb-big5.table", "r");
    break;
    case "big5":
    $fp = fopen("big5-gb.table", "r");
    break;
    default:
    $fp = fopen("gb-big5.table", "r");
    break;
    }   $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;
    }//例子:$big5是繁体字 $gb是简体字 输出以后请切换浏览器编码 即可见到,这是修改于Ajax的代码
    /*
    $big5="徽骸種9a#HGYUG7KJN*(*(*^(^(*(*Θぃの"; 
    $gb="繁体语言";
    echo gb_big5($gb,"gb");
    echo "<br><br><br><br><br>";
    echo gb_big5($big5,"big5");
    */?>