PHP 中文 转UNICODE, JS 将UNICODE转为GBK

 首先是PHP下的中文转为UNICODE进行传递

    function str_utf8_unicode($name){  
        $name = iconv('GBK','UCS-2', $name);  
        $len  = strlen($name);  
        $str  = '';  
        for ($i = 0; $i < $len - 1; $i = $i + 2){  
            $c  = $name[$i];  
            $c2 = $name[$i + 1];  
            if (ord($c) > 0){   //两个字节的文字  
                $str .= '\u'.base_convert(ord($c), 10, 16).str_pad(base_convert(ord($c2), 10, 16), 2, 0, STR_PAD_LEFT);  
                //$str .= base_convert(ord($c), 10, 16).str_pad(base_convert(ord($c2), 10, 16), 2, 0, STR_PAD_LEFT);  
            } else {  
                $str .= '\u'.str_pad(base_convert(ord($c2), 10, 16), 4, 0, STR_PAD_LEFT);  
                //$str .= str_pad(base_convert(ord($c2), 10, 16), 4, 0, STR_PAD_LEFT);  
            }  
        }  
        //$str = strtoupper($str);//转换为大写
		$str =strtolower($str);//转换为小写
        return $str;  
    }  

调用实例:$result[$i]['docsubject'] = str_utf8_unicode($result[$i]['docsubject']);



然后是JS下的补充函数

   var GB2312UnicodeConverter = { 
    ToUnicode: function (str) {
      return escape(str).toLocaleLowerCase().replace(/%u/gi, '\\u');
      } 
    , ToGB2312: function (str) {
        return unescape(str.replace(/\\u/gi, '%u'));
      } 
  };

然后在转码调用

var zurl = "";
zurl = "read_id.php?id=" + zid;
   //alert("zurl is:"+zurl);
   

$.getJSON(zurl,function(data){  
            var $jsontip = $("#jsonTip");  
            var strHtml = "";//存储数据的变量  
            $jsontip.empty();//清空内容  
            $.each(data,function(infoIndex,info){  
                  strHtml += "ID:"+info["id"]+"<br>";  
				 // strHtml += "标题:"+info["docsubject"]+"<br>";  
				  strHtml += "标题:"+GB2312UnicodeConverter.ToGB2312(info["docsubject"])+"<br>"; 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

紫气东来_999

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值