如题,\u706b\u5f71还是%u706b%u5f71,,貌似代表 火影 两个字,请问各位大大,这是什么编码啊,怎么通过PHP转过来啊,在下感激不尽m(_ _)m

解决方案 »

  1.   

    是UNICODE,给你一个转换成GBK的例子:
    <?php
    $s = '\u706b\u5f71,%u706b%u5f71';
    function unicode2gbk($m)
    {
    return mb_convert_encoding(pack('v', hexdec($m[1])), 'CP936', 'UCS-2LE');
    }
    $out = preg_replace_callback('/[\\\\%]u([\da-f]{4})/is', unicode2gbk, $s);
    echo $out;
    ?>
      

  2.   

    \u706b这样的编码在PHP中,用json_encode中文后就会得到这样的数据
    \%706b这样的编码在php中,\u706b经过urlencode后只会得到%5C706b(应该不是这们同学要的数据)
    \u706b这样子的数据直接用json_decode就可以恢复成原来的数字了echo json_decode('"\u706b\u5f71"');  //字符串里面的双引号不能少,因为被序列化后的字符串中是含有双引号的,在此也必须加上
      

  3.   

    不管用啊json_decode是什么函数要如何配置啊
      

  4.   

    你的PHP是5。2以下的?!
    如果是5.2以下的,那就不能直接用这个json函数了