google下巴,有gb2313到utf-8转换的函数,用个码表

解决方案 »

  1.   

    PHP程序输出中指定charset
    header('Content-Type:text/xml;charset=GB2312');
      

  2.   

    在ajax应用中,下行的数据对编码没有特别的要求。只要在php输出时声明一下语言类型就可以了
    上行的数据应该自行用url编码函数进行编码,以免被浏览器自作聪明的搞乱
    编码时要用encodeURIComponent函数而不是escape函数
    用encodeURIComponent函数后的数据是utf-8编码的,如果页面使用的也是utf-8编码的话,那就正好啦
    如果页面采用非utf-8编码,那么就要做编码转换了。当iconv函数不可用时,应使用查表法自行开发转换函数。网上也有很多现成的东西可以下载,如果你同时在使用jpGrapch,那么恭喜你了。你已经拥有转换函数和对照表了。
    其实自己做一张对照表也是很容易的事情
      

  3.   

    下面方法加入你的php文件,可以实现对js用 escape方法编码后的解码function unescape($str) 
    { // 对js的编码进行解码 
     $str = rawurldecode($str); 
         preg_match_all("/%u.{4}|&#x.{4};|&#d+;|.+/U",$str,$r); 
         $ar = $r[0]; 
         foreach($ar as $k=>$v) 
         { 
              if(substr($v,0,2) == "%u") 
                    $ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,-4))); 
              elseif(substr($v,0,3) == "&#x") 
                    $ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,3,-1))); 
              elseif(substr($v,0,2) == "&#")
               $ar[$k] = iconv("UCS-2","GBK",pack("n",substr($v,2,-1))); 
              
         } 
         return join("",$ar);  
    }